Запуск Ninject 3 на среднем уровне доверия

У меня есть приложение ASP.NET MVC3 с Ninject 3. Ninject 3 был установлен с помощью NuGet, и теперь я пытаюсь опубликовать это приложение на хосте, использующем средний уровень доверия.

Итак, после того, как я немного поискал в Google, я нашел сборку на веб-сайте проекта Ninject GoogleCode, специальную версию для сред со средним уровнем доверия, поэтому я скачал и изменил ссылки на свой проект, и после того, как я его опубликовал, я все еще получаю ту же ошибку.

Я уже изменил способ создания своего ядра и использую:

var kernel = new StandardKernel(new NinjectSettings { UseReflectionBasedInjection = true });

И я все еще получаю ошибку.

Так кто-нибудь уже сталкивался с этой проблемой и решил ее?


person Leonardo Lima    schedule 16.08.2012    source источник


Ответы (1)


Попробуй это:

Откройте этот файл: 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);
person Stofkn    schedule 09.12.2012
comment
Это работало для меня всякий раз, когда я не добавлял атрибут AllowPartiallyTrustedCallers. Я использую виртуальный хостинг GoDaddy. - person mike9182; 02.03.2014