【发布时间】:2019-04-30 18:39:35
【问题描述】:
我有一个使用 EF 6.2(数据库优先)的 VS 2019 解决方案。当我导入一个存储过程,然后将属性配置为返回一个复杂类型时,设计器并没有将存储过程对象放在模型的上下文中。但是,您可以在模型浏览器的“函数导入”和“存储过程/函数”中看到存储过程。反复尝试。
然后,我在 VS 2017 中打开了相同的解决方案。从模型浏览器中删除了存储过程,然后再次导入存储过程(并将复杂类型分配为返回)。编译后存储过程对象在模型上下文中找不到。
我已经能够重现这个。很奇怪。不是权限问题,因为导入在 VS2017 中有效,但在 VS2019 中无效。两者中的 EF 版本相同(这是相同的解决方案)。
【问题讨论】:
-
以下是我可以重现的方法:使用 VS 2017 创建解决方案,以 .NET 4.6.1 为目标。添加 EF 6.2。添加一个数据库(首先是数据库)。添加一个表,也许还有一个存储过程。编译。然后,使用 VS 2019 打开相同的解决方案。如果我随后尝试添加另一个表或存储过程,它会显示在 EDMX 设计器的表面上,但即使在编译后,也不会显示在模型或实体中。
标签: visual-studio entity-framework stored-procedures