SORU
5 Mayıs 2011, PERŞEMBE


Varlıklar bu SERİ 'Sistem yöntemi tanımıyor.Dize Olabilirdi' yöntem, ve mağaza bir ifade tercüme edilemez bu yöntem

Sql server için bir mysql sunucudan bazı şeyler göç değilim ama bu kodu nasıl olduğunu çözemedim:

using (var context = new Context())
{
    ...

    foreach (var item in collection)
    {
        IQueryable<entity> pages = from p in context.pages
                                   where  p.Serial == item.Key.ToString()
                                   select p;
        foreach (var page in pages)
        {
            DataManager.AddPageToDocument(page, item.Value);
        }
    }

    Console.WriteLine("Done!");
    Console.Read();
}

İkinci içine girdiğinde [3] Bu, bir istisna atar diyerek:

Yöntem tanımıyor Varlıklar bu SERİ 'Sistemi.String () Olabilirdi' yöntemi, ve bir mağaza tercüme edilemez bu yöntem ifade.

Herkes bu neden oluyor biliyor musun?

CEVAP
5 Mayıs 2011, PERŞEMBE


Sadece geçici bir değişken ve ifade kullan o zaman dizeyi kaydetmek:

var strItem = item.Key.ToString();

IQueryable<entity> pages = from p in context.pages
                           where  p.Serial == strItem
                           select p;

Sorun ToString() gerçekten idam olmadığı için, MethodGroup a dönüşüyor ve ve SQL için ayrıştırılmış çevrilmiş olduğu ortaya çıkar. ToString() eşdeğer yoktur bu yana, deyim başarısız olur.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • EminemVEVO

    EminemVEVO

    12 Mayıs 2009
  • krotoflik

    krotoflik

    26 ŞUBAT 2011
  • Phandroid

    Phandroid

    26 Ocak 2009