我有一个使用EF 6.2(数据库优先)的VS 2019解决方案。当我导入存储过程然后配置属性以返回复杂类型时,设计人员没有将存储过程对象放置在模型的上下文中。但是,您可以在模型浏览器的“函数导入”和“存储过程/函数”中看到存储过程。反复尝试。
然后,我在VS 2017中打开了相同的解决方案。从模型浏览器中删除了存储过程,然后再次导入了存储过程(并将复杂类型指定为返回值)。编译后,在模型的上下文中找不到存储过程对象。
我已经能够对此进行复制。很奇怪。权限不是问题,因为导入在VS2017中有效,但在VS2019中无效。两者中的EF版本相同(这是相同的解决方案)。
答案 0 :(得分:2)
这是一个错误。在此处阅读:https://github.com/aspnet/EntityFramework6/issues/705
在VS 16.1发布之前,解决方法(非常简单)是右键单击.tt文件和“运行自定义工具”