2012-03-26 134 views
1

我得到一個奇怪的行爲。我有一個我創建的類,用於將從數據實體編制的數據格式化爲數據網格。我使用linq查詢來從實體類型的列表中創建類類型的列表。一些類的屬性可以從linq查詢中訪問,但其他的給我一個錯誤。 (AMNotStartedPortalDisplay'不包含'ChecklistStatusID'的定義)。所以我的問題是爲什麼linq可以訪問一些屬性而不是其他屬性?我看不出爲什麼會發生這種情況。使用Linq來填充類

這裏是我的類:

public class AMWOTPortalDisplay 
{ 
    public string DisplayName { get; set; } 
    public string LOB { get; set; } 
    public string DisplayProjectPackages { get; set; } 
    public string ChecklistStatus { get; set; } 
    public int ChecklistStatusID { get; set; } 
    public string InstallDate { get; set; } 
    public string dateToYellow { get; set; } 
    public string dateToRed { get; set; } 
    public string ApplicationManager { get; set; } 
    public string ApplicationManagerLanID { get; set; } 
    public int ApplicationManagerUserID { get; set; } 
    public string ImpersonatedManager { get; set; } 
    public string ImpersonatedManagerLanID { get; set; } 
    public int ImpersonatedManagerUserID { get; set; } 
    public string DelegateName { get; set; } 
    public string DelegateLanID { get; set; } 
    public int DelegateUserID { get; set; } 
    public string WOTAssignee { get; set; } 
    public int ChecklistID { get; set; } 
    public string DisplayLinkText { get; set; } 
    public string LinkTextURL { get; set; } 
    public string rowColor { get; set; } 
    public string rowTextColor { get; set; } 
} 

這裏是LINQ查詢,因爲我有這麼遠:

var portaldisplay = checklists 
     .Select(c => new AMNotStartedPortalDisplay 
     { 
      DisplayName = string.Format("{0} ({1})", c.Application.Name, c.Application.ApplicationID), 
      LOB = c.Application.LOB, 
      ChecklistStatus = c.ChecklistStatusType.TypeName, 
      ChecklistStatusID = c.ChecklistStatusTypeID 



     }); 

感謝,

朗達

回答

3

小心您的類型:

public class AMWOTPortalDisplay 

然後:

Select(c => new AMNotStartedPortalDisplay { ... }) 

它看起來像你的查詢可能應該是:

Select(c => new AMWOTPortalDisplay { ... }) 
+1

哦我的天哪!它必須是星期一。兩個不同的人看着這個,並沒有看到。謝謝。 – Rhonda 2012-03-26 18:48:35