如何修复联接

时间:2019-08-05 09:41:14

标签: c# linq entity-framework-6

我正在制作一个新程序,但我对这种联接感到困惑。我收到一条错误消息,说在对“ join”的调用中类型推断失败

var fill = from Projekt in sqlObj.Projekts
                   join s in sqlObj.Status on Projekt.StatusID equals s.StatusDescription
                   where Projekt.StatusID !=6
                   select new
                   {
                       Projekt.StatusID,
                       Projekt.ProjektName,
                       Projekt.Projekt_User,
                       s.StatusDescription
                   };
        OnGoingProjekts.ItemsSource = fill.ToList();

我希望在我的Datagrid中获取状态名称。不是id本身。

1 个答案:

答案 0 :(得分:0)

我需要猜测,因为我没有所有信息,但是看起来您尝试加入两种不同类型的字段。

相反,尝试在ID上加入状态。

var fill = from Projekt in sqlObj.Projekts
                   join s in sqlObj.Status on Projekt.StatusID equals s.Id
                   where Projekt.StatusID !=6
                   select new
                   {
                       Projekt.StatusID,
                       Projekt.ProjektName,
                       Projekt.Projekt_User,
                       s.StatusDescription
                   };
        OnGoingProjekts.ItemsSource = fill.ToList();