【问题标题】:Does NInject work in medium trust hosting?NInject 是否适用于中等信任托管?
【发布时间】:2010-04-11 08:24:25
【问题描述】:

我正在与 GoDaddy 进行共享托管,并且我使用 Castle Windsor 开发了一个示例 ASP.NET MVC 应用程序,不幸的是,它在中等信任设置下无法运行。具体来说,我收到了这个错误:“[SecurityException:该程序集不允许部分受信任的调用者”......等等。遗憾的是,GoDaddy 的信任策略并不灵活。

我与 Windsor 无关,我想尝试另一种在 Medium Trust 下工作的方法。我实际上很想使用 NInject,但我读过一些人的成功参半。我读过的唯一一个没有问题的是微软的 Unity。

我的问题是,NInject 在中等信任下工作吗?如果没有,我有什么选择?

【问题讨论】:

    标签: asp.net castle-windsor unity-container ninject


    【解决方案1】:

    一些 DI 框架使用轻量级代码生成,不能在中等信任下工作。 NInject 就是其中之一。您可以尝试将UseReflectionBasedInjection 开关设置为true,这将使用反射,如果性能对您来说不是问题,这可能值得一试。

    【讨论】:

    • LCG部分信任没有问题。似乎适用于简单注射器。
    【解决方案2】:

    如果您希望 Windsor 在部分信任下工作,您目前必须使用 AllowPartiallyTrustedCallersAttribute 从源代码构建它。最简单的方法是使用喇叭,请参阅this thread

    要不看看Unity或者AutoFac,我觉得他们默认有APTCA。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-06
      • 1970-01-01
      • 2021-12-05
      相关资源
      最近更新 更多