Entity framework 在CLR存储过程中使用实体框架

Entity framework 在CLR存储过程中使用实体框架,entity-framework,clr,sql-server-2016,sqlclr,Entity Framework,Clr,Sql Server 2016,Sqlclr,我在七年前的一篇文章中发现,实体框架不能用于CLR存储过程。在过去七年左右的时间里,这种情况是否得到纠正?是否有允许实体框架在CLR存储过程中工作的更新可用?不这样做的正常原因是,如果这样做,则必须将EF依赖的所有.NET Framework程序集作为不安全程序集安装到数据库中,每次更新服务器上的.NET Framework时,您都必须更新它们。截至EF 6.2,该列表为: smdiagnostics.dll system.runtime.serialization.dll system.dyn

我在七年前的一篇文章中发现,实体框架不能用于CLR存储过程。在过去七年左右的时间里,这种情况是否得到纠正?是否有允许实体框架在CLR存储过程中工作的更新可用?

不这样做的正常原因是,如果这样做,则必须将EF依赖的所有.NET Framework程序集作为不安全程序集安装到数据库中,每次更新服务器上的.NET Framework时,您都必须更新它们。截至EF 6.2,该列表为:

smdiagnostics.dll
system.runtime.serialization.dll
system.dynamic.dll
microsoft.csharp.dll
这是除了安装更新版本的

entityframework.dll  
entityframework.sqlserver.dll
这将与自定义CLR dll的更新版本一起提供


然后,您必须开始在SQLCLR中测试EF,以确定它是否a)工作正常,b)在SQLCLR独特的托管环境中运行良好。

我相信情况仍然如此。这不好笑,但你为什么要这么做呢?系统的其余部分使用实体框架。我偶尔发现CLR存储过程很方便。但是,对于系统的可维护性,我希望在我编写的任何.NET代码中使用相同的数据层,这些代码在系统的其余部分中使用。为什么我不想在CLR存储过程中使用实体框架?我想我是在问,如果实体框架被CLR存储过程允许访问,我会打开一个漏洞吗?这是有道理的,听起来比我愿意付出的更多努力。谢谢大家!@大卫,谢谢分享你的意见。。我可以问你一个相关的问题吗?当然可以。尽管您可能只想问一个新的StackOverflow问题,并将其链接到此处。@DavidBrowne Microsoft,谢谢,这里是: