2011-08-05 56 views
0

该表有两列。无法将类型'WpfA.DataClass.tblGroup'转换为'WpfA.Group'

columns1 = IdGroup

columns2 = Hgroup

public partial class MainWindow : Window 
{ 
    public MainWindow() 
    { 
     InitializeComponent(); 
     this.SetData(); 
    } 
    private void SetData() 
    { 
     using (DataClass.DataClassesAccDataContext DataContext = new DataClass.DataClassesAccDataContext()) 
     { 
      List<Group> myGroup = (Group)DataContext.tblGroup.ToList(); 
     } 
    } 
} 

public class Group 
{ 
    public string Name { get; set; } 
    public string Family { get; set; } 
    public bool Selecting { get; set; } 
} 

错误:

无法将类型 'WpfA.DataClass.tblGroup' 到 'WpfA.Group'

enter image description here

回答

0

A tblGroup,这是w帽子从你的LINQ查询中返回,不是Group的实例,因为tblGroup不是从Group派生的。你有两个选择:

  1. 更改集团作为一个接口,并有tblGroup实现这个 接口(假设tblGroup在 集团指定的所有属性)。
  2. 使用LINQ选择可突出显示组对象而不是 tblGroup对象。但是请注意,这些组对象将是从数据库断开的 - 例如如果您需要将更改 保存到组对象中,则必须将其复制回tblGroup 对象。

(还要注意的是tblGroups.ToList()[0]会返回一个单一的项目,而不是一个列表。所以,你也许应该尝试将其分配到一个组,而不是List<Group>。另外,如果你只想要第一个结果,使用LINQ First()运算符而不是ToList()[0]会更有效;这将避免从数据库中提取不需要的记录。)

相关问题