如何为存储过程的结果更新 Entity Framework 自动生成的代码
How to update the Entity Framework auto-generated code for the results of a stored procedure
我想要实现的是让自动生成的代码更新存储过程的结果。
到目前为止我所做的是:
- 修改了我的开发数据库中的存储过程
在Visual Studio中:
2.1 确保在服务器资源管理器中设置了连接字符串
2.2 右键单击 EDMX 图并从数据库中 selected 更新模型。显示更新向导。我没有添加任何东西,我检查存储过程是否在列表中。在此之后,我单击“完成”按钮。
然后我两次收到 "Running this text template can potentially harm your computer" 消息,然后单击“确定”。
保存更改
构建 DLL
右键单击 EDMX 和 select 运行 自定义工具下的 tt(不是上下文)。我收到与上面相同的安全消息,所以单击确定。
一切似乎运行都正常,没有明显的错误。
我也试过构建菜单下的Transform All T4 Templates
我正在使用 Visual Studio 2013 和 SQL Server 2014。Entity Framework 运行时间版本是 4.0.30319。
我查看了 EDMX xml 文件,有一个条目用于存储过程的 FunctionImportMapping
和它将创建的 class。
如果我在 Visual Studio 中尝试使用 SQL 服务器对象资源管理器连接到数据库时有任何不同,它会显示 SQL Server 2012 登录,如果我单击连接它显示"An incompatible SQL Server version was detected"。这可以通过为 Visual Studio 2013 安装最新版本的 SSDT 来解决。
我是 Entity Framework 的新手,如有任何帮助,我们将不胜感激。
如何让 class 更新,还是我想太多了,必须手动更新?
感谢您的帮助。
我找到了一个似乎可以解决问题的解决方案:
- 打开 EDMX 图
- 从数据库更新模型
- 右键单击图表并从菜单中选择 select 模型浏览器
- 展开函数导入文件夹
- 找到被修改的存储过程。
- 双击它,将显示“编辑函数导入”表单
- 单击获取列信息
- 确保select编辑了正确的复杂类型,然后单击更新。
- 点击确定
现在应该将新列添加到 auto-generated 代码中。
我想要实现的是让自动生成的代码更新存储过程的结果。
到目前为止我所做的是:
- 修改了我的开发数据库中的存储过程
在Visual Studio中:
2.1 确保在服务器资源管理器中设置了连接字符串
2.2 右键单击 EDMX 图并从数据库中 selected 更新模型。显示更新向导。我没有添加任何东西,我检查存储过程是否在列表中。在此之后,我单击“完成”按钮。
然后我两次收到 "Running this text template can potentially harm your computer" 消息,然后单击“确定”。
保存更改
构建 DLL
右键单击 EDMX 和 select 运行 自定义工具下的 tt(不是上下文)。我收到与上面相同的安全消息,所以单击确定。
一切似乎运行都正常,没有明显的错误。
我也试过构建菜单下的Transform All T4 Templates
我正在使用 Visual Studio 2013 和 SQL Server 2014。Entity Framework 运行时间版本是 4.0.30319。
我查看了 EDMX xml 文件,有一个条目用于存储过程的 FunctionImportMapping
和它将创建的 class。
如果我在 Visual Studio 中尝试使用 SQL 服务器对象资源管理器连接到数据库时有任何不同,它会显示 SQL Server 2012 登录,如果我单击连接它显示"An incompatible SQL Server version was detected"。这可以通过为 Visual Studio 2013 安装最新版本的 SSDT 来解决。
我是 Entity Framework 的新手,如有任何帮助,我们将不胜感激。
如何让 class 更新,还是我想太多了,必须手动更新?
感谢您的帮助。
我找到了一个似乎可以解决问题的解决方案:
- 打开 EDMX 图
- 从数据库更新模型
- 右键单击图表并从菜单中选择 select 模型浏览器
- 展开函数导入文件夹
- 找到被修改的存储过程。
- 双击它,将显示“编辑函数导入”表单
- 单击获取列信息
- 确保select编辑了正确的复杂类型,然后单击更新。
- 点击确定
现在应该将新列添加到 auto-generated 代码中。