herhangi rekor olup olmadığını aşağıdaki LINQ varlıkları bu şemaLINQ (tarafından ve Kont)
Table P Table R Table Q
PK*
RK ----> RK*
Text QK ------> QK*
Text Text
karşı çalışır ve bu mesajı verir
from r in ctx.Rs
join p in ctx.Ps on r.RK equals p.RK
group r by r.QK into gr
select new { QK = (int)gr.Key, Num = gr.Count() }
sorgulamak var P'de karşılık gelen kayıt yokken Q: "Int32" türünde cast değeri, materialized değeri null olduğu için başarısız oldu. Sonuç türünün jenerik parametresi veya sorguda nullable bir tür kullanılmalıdır. "
Sorun, son satırdaki gr.Count() 'dir, ancak bir çözüm bulamıyorum. Gr için sıfır test etmeye çalıştım ama işe yarayan bir yol bulamıyor.
Benzer bir soruna Count() yerine Sum() kullanarak bir takım çözümler gördüm, ancak bunları benim sorunuma uyarlayamadım.
Sorguyu Group and Count in Linq issue'daki gibi görünmeye çalıştım, ancak başka bir ileti aldım.
Ayrıca Group and Count in Entity Framework (ve başkalarının sayısı) de baktım ama sorun farklı.
Yanıtladığınız için teşekkür ederiz. Ne yazık ki, bu hala aynı mesajı veriyor. –