C#如何将实体框架实体与ObservableCollection一起使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#如何将实体框架实体与ObservableCollection一起使用相关的知识,希望对你有一定的参考价值。

当我尝试的时候

using (var db = new NewDbContext())
{
    var AllItems = new ObservableCollection<db.Items>();
    ItemsDataGrid.ItemsSource = AllItems;
}

我收到了那个错误

'db'是一个变量,但是像类型一样使用

答案

那是因为db.Items不是Type而是某种类型的集合(我想这种类型是Item?)。

试试这个:

    var AllItems = new ObservableCollection<Item>(db.Items);
    ItemsDataGrid.ItemsSource = AllItems;
另一答案

db.Items将返回IQueryable<Item>类型的集合。看起来你想将IQueryable<T>的结果转换为ObservableCollection<T>

你实际上需要在Items的构造函数中传递Observable。正确的代码是:

ObservableCollection<Item> AllItems = new ObservableCollection<Item>(db.Items);

然后:

ItemsDataGrid.ItemsSource = AllItems;

希望能帮助到你。

以上是关于C#如何将实体框架实体与ObservableCollection一起使用的主要内容,如果未能解决你的问题,请参考以下文章

如何将系统版本化的时态表与实体框架一起使用?

实体框架,如何将 IQueryable 与多个 where 转换为 SQL 一起使用?

同时将实体框架与 SQL Server 和 SQLite 数据库一起使用

如何将实体框架(代码优先)与动态创建的连接字符串和单文件数据库一起使用?

如何将实体框架用于具有多个客户端的应用程序

实体框架核心中等效的 SQL RIGHT 函数