Asp.net mvc 3 在中等信任级别上运行Ninject 3
我有一个带有Ninject 3的ASP.NET MVC3应用程序。Ninject 3是使用NuGet安装的,现在我正试图在使用中等信任级别的主机上发布此应用程序 所以我在google上搜索了一下之后,我在Ninject GoogleCode项目网站上找到了一个构建,一个针对中等信任环境的特定版本,所以我下载并更改了我项目的引用,在发布之后,我仍然得到了相同的错误 我已经改变了创建内核的方式,我正在使用: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
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共享主机。