Asp.net mvc 3 在中等信任级别上运行Ninject 3

Asp.net mvc 3 在中等信任级别上运行Ninject 3,asp.net-mvc-3,nhibernate,medium-trust,Asp.net Mvc 3,Nhibernate,Medium Trust,我有一个带有Ninject 3的ASP.NET MVC3应用程序。Ninject 3是使用NuGet安装的,现在我正试图在使用中等信任级别的主机上发布此应用程序 所以我在google上搜索了一下之后,我在Ninject GoogleCode项目网站上找到了一个构建,一个针对中等信任环境的特定版本,所以我下载并更改了我项目的引用,在发布之后,我仍然得到了相同的错误 我已经改变了创建内核的方式,我正在使用: var kernel = new StandardKernel(new NinjectSet

我有一个带有Ninject 3的ASP.NET MVC3应用程序。Ninject 3是使用NuGet安装的,现在我正试图在使用中等信任级别的主机上发布此应用程序

所以我在google上搜索了一下之后,我在Ninject GoogleCode项目网站上找到了一个构建,一个针对中等信任环境的特定版本,所以我下载并更改了我项目的引用,在发布之后,我仍然得到了相同的错误

我已经改变了创建内核的方式,我正在使用:

var kernel = new StandardKernel(new NinjectSettings { UseReflectionBasedInjection = true });
我仍然得到了错误

有人已经面对这个问题并解决了吗?

试试这个:

打开此文件:MyProjectName\Properties\AssemblyInfo.cs 然后加上这一行

[程序集:AllowPartiallyTrustedCallers]

在Global.asax中:

     INinjectSettings settings = new NinjectSettings
        {
            UseReflectionBasedInjection = true,    // disable code generation for partial trust
            InjectNonPublic = false,               // disable private reflection for partial trust
            InjectParentPrivateProperties = false, // reduce magic
            LoadExtensions = false                 // reduce magic
        };

        IKernel kernel = new StandardKernel(settings);

每当我没有添加AllowPartiallyTrustedCallers属性时,这对我来说都很有效。我正在使用GoDaddy共享主机。