5
  • Birkaç tabloya katılan ve SQL Yöneticisi'nde test edildiğinde doğru verileri sağladığında bir SQL Görünümü oluşturdum (Bu bir fark yaratırsa bunlar karmaşık birleşimlerdir).
  • MVC'de bir (veri ilk) Varlık Veri Modeli oluşturdu ve ardından nesli kod ekledi.
  • Bir idex sayfası oluşturan denetleyicide bir LINQ sorgum var.

Tüm temel MVC öğeleri.Varlık Framework Sorgu Sonuçları Çoğalt

Uygulamayı çalıştırdığımda yinelenen kayıtları alıyorum. Daha fazla hak kazanmak için, bir sipariş birden fazla satıra sahipse, "sipariş" içindeki her satırın ilk kaydını döndürür.

SQL Results 
Order, Line, Part 
12345, 1, 3829138120 
12345, 2, 1238401890 

MVC/EF Results 
Order, Line 
12345, 1, 3829138120 
12345, 1, 3829138120 

Bu sorunun nedeni ile ilgili herhangi bir düşünce var mı?

+0

Bazı küçültülmüş kod bölümleri yayınlayabilir misiniz? Özellikle LINQ sorgusu. – Kit

cevap

5

Varlık anahtar niteliklerini iki kez kontrol etmelisiniz. Sorgu sonucunu görüyorum ve birincil anahtar Sipariş ve Satır olarak işaretlemelisiniz ve bence işaret sırasını anahtar olarak unuttunuz.

+3

İçgörü için teşekkürler, danihp. ** ** Çözünürlük **: Sorunu gidermek için Varlık Veri Modeli'ni (edmx dosyası) açtım ve Varlık Kümesi * (SalesOrders) * içindeki Alan _ (OrderLine) _ özelliğini seçtim. Alan için Özellikler'i açıp Varlık Anahtarı değerini true olarak ayarlayın. (Muhtemelen olmaması gereken Varlık Anahtarları olarak ayarlanmış birçok alan buldum.) – Pete

+0

Merhaba Pete, mutlu bir son ... ya da başla. Projenizde bol şanslar ve detaylı çözünürlüğü açıkladığınız için teşekkürler. – danihp