C# GridView在定义的类型中找不到字段,但匿名类型?
我使用LINQ从数据库中查询数据,然后将其绑定到GridView。当我使用匿名类型时,一切正常,但现在我想重用数据(用于以后的筛选),因此我创建了一个类来映射匿名类型,如下所示:C# GridView在定义的类型中找不到字段,但匿名类型?,c#,.net,linq,entity-framework,gridview,C#,.net,Linq,Entity Framework,Gridview,我使用LINQ从数据库中查询数据,然后将其绑定到GridView。当我使用匿名类型时,一切正常,但现在我想重用数据(用于以后的筛选),因此我创建了一个类来映射匿名类型,如下所示: public class DetailComplaint { public decimal Id; public decimal Status; public string Name; public decimal ServiceId; public string Service
public class DetailComplaint
{
public decimal Id;
public decimal Status;
public string Name;
public decimal ServiceId;
public string Service;
public string Title;
public string Customer;
public string Description;
public DateTime CreatedDate;
public decimal CreatedBy;
public string Author;
public decimal? AssignedBy;
public decimal? AssignedTo;
public string Technician;
public DateTime? AssignedDate;
public string Contact;
}
然后在查询中使用它(…选择new DetailComplaint{//所有字段与之前相同})
但是现在当我绑定数据时,GridView抛出一个异常,它找不到名为“Id”的字段或属性,该字段或属性在详细信息中显式定义
我怎样才能解决这个问题?谢谢您是否尝试过将这些设置为属性而不是字段?某些形式的绑定只适用于属性而忽略字段。不清楚您使用的是哪个
GridView
,但这可能就是问题所在
在这里最简单的方法就是像这样使用自动属性
public class DetailComplaint
{
public decimal Id {get; set; }
public decimal Status {get; set; }
public string Name {get; set; }
public decimal ServiceId {get; set; }
public string Service {get; set; }
public string Title {get; set; }
public string Customer {get; set; }
public string Description {get; set; }
public DateTime CreatedDate {get; set; }
public decimal CreatedBy {get; set; }
public string Author {get; set; }
public decimal? AssignedBy {get; set; }
public decimal? AssignedTo {get; set; }
public string Technician {get; set; }
public DateTime? AssignedDate {get; set; }
public string Contact {get; set; }
}