我是WPF和MVVM的初学者。

我有一个数据网格的看法。我已经将datacontext设置为我的 View 模型,并将绑定(bind)设置为我的IBindingList。我的模型包含一个ADO.NET edmx。

我正在使用Linq从ViewModel查询我的EF表。看来查询必须在一种方法中,以避免出现错误'字段初始化器无法引用非静态字段,方法或属性'Entity_MVVM.ViewModels。等等。'

这是将我的EF表查询到IBindingList中的代码。然后,如何调用GetData方法以在 View 中公开查询结果?

namespace Entity_MVVM.ViewModels

 public class ContractViewModel : INotifyPropertyChanged
  {

   public void GetData()
   {
       LDBEntities db = new LDBEntities();

       IBindingList contracts = ((from c in db.tbContracts
                                  select new { c.Contract_ID, c.Contract_name, c.Country }
     ) as IListSource).GetList() as IBindingList;

   }

   public event PropertyChangedEventHandler PropertyChanged;
 }
}

谢谢大家

最佳答案

实例Vairable不能用于初始化另一个变量,因为编译器可能无法以相同的顺序执行。

尝试移动LDBEntities db = new LDBEntities()来查看模型构造函数。

关于c# - WPF MVVM中的ADO.NET Entity Framework ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19223642/

10-11 08:47