0

我正在阅读以下书:Programming Entity Framework,我很难区分 CSDL 中定义的“模型定义函数”和我将在我自己的 Partial 类中创建的函数(即我的 Partial 类)之间的区别我创建的“客户”实体)。

所以书中的例子是一个连接并返回某人全名的函数,如下所示:

<DefiningExpression>
   Trim(c.LastName) + ", " + Trim(c.FirstName)
</DefiningExpression>

我可以在我的部分客户类中创建一个可以做同样事情的属性或函数吗?在实体框架数据模型的 CSDL 中创建这些模型定义的函数,而不是在我的 Partial 类中创建这些模型定义的函数有什么优势或主要吸引力?

4

1 回答 1

1

不同之处在于模型定义函数是模型的一部分,您可以在 ESQL 或 Linq-to-entities 查询中使用它,因为 EF 知道如何将其转换为 SQL。在部分类中创建通用 .NET 函数时,不能在 Linq-to-entities 或 ESQL 查询中使用它,因为 EF 不知道如何翻译它们。

于 2012-07-27T07:55:07.050 回答