我有以下型号
namespace Models
{
[System.Data.Linq.Mapping.Table(Name = "RegionTable")]
public class Region
{
[System.Data.Linq.Mapping.Column]
public int ID { get; set; }
[System.Data.Linq.Mapping.Column]
public string Name { get; set; }
[System.Data.Linq.Mapping.Column]
public string OrchardRoleID { get; set; }
}
}
我希望选择所有区域并通过Region模型对象列表返回。
为什么会这样?
var lQuery = from r in lDBContext.Regions new Models.Region { ID = r.ID, Name = r.Name };
var l = lQuery.ToList();
但以下不是
var lQuery = from r in lDBContext.Regions select r;
var l = lQuery.ToList();
因为它会抛出一个
Unable to cast object of type 'System.Int32' to type 'System.String'.
异常?
答案 0 :(得分:2)
您的问题是因为
public string OrchardRoleID { get; set; }
我认为这是您数据库中的int
在你的第一个例子中它起作用,因为你省略了那个字段