试图为中等信托公司开发是一个失败的事业吗?

 2023-02-17    374  

问题描述

我开始开发一个新的MVC应用程序,其中包含实体框架代码 – 首先是依赖注入的统一.我使用了EF5和团结,因为我认为他们应该在中等信任中工作.但是,当我在我的web.config中扔到<trust level=”Medium” />标记时,我开始得到反射权限异常.

当我超越使用像System.Data.SqlClient ado.net的内置的东西时,我总是在媒体信任中遇到问题.自动映射器:失败. nibernate:失败. mysql:失败. EF5 Code-First:失败. IOC:失败.

试图为中等信托公司开发是一个失败的事业吗?

我只是追逐一个管道梦吗?是否有可能使用将在中等信任中运行的现代技术实现良好的批量和可测试的Web应用程序?

在VMS/Virtual Server/云计算时代(甚至是将应用程序池设置为完全信任的一些共享主机)有人发现为中等信任开发值得努力吗?

推荐答案

ASP.NET团队的官方位置是中等信任已过时.这意味着一些事情:

  • 我们正在自动解析向我们报告的所有中等信任相关的错误为”无法修复”.
  • 我们为托管提供了指导,他们应该迁移远离中等信任,并使用适当的OS级别隔离( http://support.microsoft.com/kb/2698981 ).

  • 我们正在从我们开发的框架(MVC,WebAPI,SignalR等)中删除中等信任支持.前进,在这些框架上建立的应用程序将需要完全信任.

这里,上面的术语”媒体信任”是指ASP.NET中的所有非完全信任配置,包括使用内置的信任级别(最小,低,中,高)或任何自定义信任级别.

编辑2015年5月26日:整个.NET Framework已弃用部分信任,建议客户不要依赖它作为安全边界. 来自msdn :

代码访问.NET Framework中的安全性不应用作
具有部分可信代码的安全边界,尤其是代码
未知的起源.我们建议加载和执行代码
未知的起源而不置于替代安全措施
地点.

其他推荐答案

一般需要在深度方式中需要反射无法在中等信任中运行

在您的情况下:

automapper:使用反射来发现匹配的属性和内存流克隆它们(有一个围绕的版本实际上是在中等信任中有一些限制)

nibernate:使用反射允许延迟加载才能通过代理实现NH的延迟加载(为避免此,您可以禁用延迟加载或使用NHibernate ProxyGenerator,该实用程序有助于预先创建代理的实用程序)

nibernate proxygenerator

EF:实际上我没有找到EF和中等信任的大问题….不使用关联或集合序列化对象

IOC:IOC是反射的杀手应用:)您可以尝试自动处理中等信任的Autofac

autofac

在一般中等信任中是一个很大的限制……但这一切都取决于您正在处理的什么样的项目.
考虑还要使用像Arvixe

这样的完整信任托管

希望这有助于

以上所述是小编给大家介绍的试图为中等信托公司开发是一个失败的事业吗?,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/34215.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。