gpt4 book ai didi

c# - Entity Framework 中的可更新 View 5/6

转载 作者:IT王子 更新时间:2023-10-29 04:13:13 26 4
gpt4 key购买 nike

我有几个可根据 http://technet.microsoft.com/en-us/library/ms187956.aspx 更新的 View .

我的所有观点都遵循上述文章中的规范。我已经在 SQL Management Studio 中验证了可以更新、插入和删除 View 。

我所做的研究使我有两种选择可以使我的 Entity Framework 5/6 模型中的 View 可更新:

  1. 从每个 View 中删除标签,但是,任何工作done in MyContext.edmx 在更新上下文时被覆盖数据库。这意味着这个解决方案对我来说不是很可行项目。

  2. 为每个添加插入、更新和删除存储过程在设计器中查看和映射这些。我不是特别喜欢必须创建这么多存储过程的想法。

有什么简单的方法可以告诉 EF5 或 EF6 可以添加/更新/删除 View ,在运行后续“从数据库更新模型”命令时不会被清除,而无需为每个入口方法编写存储过程(在每个 View 上插入、更新、删除)?

最佳答案

我认为最简单的方法是更改​​ StorageModel 中 EntitySet 的定义,告诉它将其视为表,而不是数据库 View 。

查看 XML 定义,它说的地方

<EntitySet Name="Products" store:Type="Views" ..

你把它改成

<EntitySet Name="Products" store:Type="Tables" ..

(注意“产品”只是一个例子)这应该在您的 .edmx 文件中。
参见第 44 页,Lerman,“编程 Entity Framework ”,第二版。

希望这对您有所帮助。

关于c# - Entity Framework 中的可更新 View 5/6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18992170/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com