我正在尝试从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> - 符合您的搜索标准的客户列表。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top