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

  • DJAndrewRyan

    DJAndrewRyan

    22 Ocak 2007
  • Jonathan Leack

    Jonathan Lea

    26 ŞUBAT 2007
  • Plugable

    Plugable

    19 Mayıs 2010