我正在使用实体框架来调用我的存储过程。我正在使用函数导入向导来完成该过程,以创建函数导入和复杂类型。
我遇到的问题是我想找到一种方法来轻松刷新所有复杂类型。
今天当存储过程发生变化时,我的流程是:
1.) 使用 EF 更新向导刷新存储过程。
2.) 转到模型浏览器中的每个函数导入并单击编辑。
3.) 单击按钮更新复杂类型。
4.) 对我的所有 100 多个函数导入手动重复此过程。
这个更新过程在这里得到了很好的解释:http://blogs.msdn.com/b/nihitk/archive/2010/04/23/ado-net-entity-designer-in-vs-2010-stored-procedure-return-type-shape-sensing.aspx http://blogs.msdn.com/b/nihitk/archive/2010/04/23/ado-net-entity-designer-in-vs-2010-stored-procedure-return-type-shape-sensing.aspx
有谁知道如何通过命令行或某种宏实现自动化。我不需要将其作为构建过程的一部分。
查看实体框架附带的 EdmGen 命令行工具。找出生成包含函数导入(很可能还有很多其他内容)的 EDMX 所需的命令行开关。
然后编写一个小型命令行程序,使用 XDocument 和 LINQ to XML 从生成的 EDMX 中读取所需的 XML 元素,然后使用相同的技术覆盖真实 EDMX 中的元素。
如果您希望此过程成为构建的一部分(尽管它会减慢速度),请将这两个命令添加到项目属性中项目的预构建事件命令行设置中。
其他开发人员和构建服务器还需要将新合并命令的编译版本签入某处进行调用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)