Linq'den SQL'e gelince biraz yeni biriyim ama umarım yardımcı olabilirsiniz. Ben Uzatma Yöntemleri ile aşağıdaki Linq to SQL deyimi yazdık: CEDB DataContext olduğunuLinq to SQL kullanırken neden "Geçersiz Döküm" alıyorum?
Cedb.ClassEvents.Where(c => c.ClassID == 1).Select(c => c).Single()
, ClassEvents (sınıflar ve etkinlikler için bir tesiste tutuluyor) bir tablodur ve ClassID'yi benzersiz tamsayı anahtarıdır.
Bu sorgu, LinqPad (Cedb olmadan) uygulamasında çalışır. Döndüğünde, dönüş türünün "ClassEvent" olduğunu söylüyor. Visual Studio'da Intellisense uygulamasında, bu sorgunun dönüş türünün ClassEvent (veri modelimde oluşturuldu) olduğunu söyler. Ancak, ne zaman bir değişken sonuçlar yerleştirmeye çalışmalıdır:
var classEvent = Cedc.ClassEvents.Where(c.ClassID == 1).Select(c => c).Single();
sonra bir hata alıyorum: ınvalidcastexception: Belirtilen atama geçerli değil. Var olan yerine "ClassEvent" sınıfını kullanırsam aynı şey olur. Buna yeniyim ama bu bir böcek yerine gerçek bir smaç gibi görünüyor. Hataya neden olduğunu bilmediğim Tek yöntem hakkında bir şey var mı? Herhangi bir yardım takdir edilecektir!
Cevabınız için teşekkürler, maalesef bu bir veritabanına konuşmak için Linq to SQL kullanamadığımız anlamına geliyor Bu biraz farklı bir şemaya sahip olabilir? – jpierson