将ExecuteQuery()与实体框架,实体类使用
-
11-10-2019 - |
题
我正在尝试从ASP Classic跳到ASP.NET。我遵循教程以获取实体框架和LINQ连接到我的测试数据库,但是我很难弄清楚 ExecuteQuery()
. 。我相信问题在于我需要一个“实体类”,但我不知道该怎么做。这是我的简单代码:
Dim db as New TestModel.TestEntity
Dim results AS IEnumerable(OF ???) = db.ExecuteQuery(Of ???)("Select * from Table1")
从Microsoft示例网站中,他们使用一个名为“客户”的实体类,但我不明白这意味着什么。
解决方案
实体框架带有视觉设计师。在该设计师中,您可以连接到现有数据库,然后从数据库中选择所有要使用的表(可能是视图)。
从该选择,EF将生成 实体类 每个桌子一个,例如 Customers
桌子,你会得到一个 Customer
上课,如果你有 Products
桌子,你得到一个 Product
班级。
这些类表示(默认情况下)您的表结构1:1-
一旦拥有,您将不再处理SQL语句和类似 ExecuteQuery()
- 您将其留给EF为您处理。
您只要求您需要什么,例如,所有客户都来自给定状态:
var ohioCustomers = from c in dbContext.Customers
where c.State = "OH"
select c;
该声明将返回 IEnumerable<Customer>
- 符合您的搜索标准的客户列表。
不隶属于 StackOverflow