Работает ли NInject на среднем трастовом хостинге? - PullRequest
2 голосов
/ 11 апреля 2010

Я занимаюсь общим хостингом с GoDaddy, и я разработал пример приложения ASP.NET MVC с использованием Castle Windsor, и, к сожалению, он не работал в условиях среднего доверия. В частности, я получил эту ошибку: «[SecurityException: эта сборка не позволяет частично доверенным вызывающим объектам» ... и т. Д. GoDaddy, к сожалению, не гибок в своей политике доверия.

Я не привязан к Виндзору и хотел бы попробовать другой, который будет работать в рамках Medium Trust. Я на самом деле хотел бы использовать NInject, но я читал людей с переменным успехом. Единственный, который я прочитал, который работает без проблем, это Microsoft Unity.

Мой вопрос: работает ли NInject со средним доверием? Если нет, какие у меня варианты?

Ответы [ 2 ]

3 голосов
/ 11 апреля 2010

Некоторые инфраструктуры DI используют упрощенную генерацию кода и не работают при среднем доверии. NInject является одним из них. Вы можете попробовать установить переключатель UseReflectionBasedInjection на true, который будет использовать отражение, которое, возможно, стоит попробовать, если производительность не является для вас проблемой.

2 голосов
/ 11 апреля 2010

Если вы хотите, чтобы Windsor работал с частичным доверием, вам нужно создать его из источника с помощью атрибута AllowPartiallyTrustedCallersAttribute. Самый простой способ сделать это - использовать рог, см. эту тему .

В противном случае взгляните на Unity или AutoFac , я думаю, что они имеют APTCA по умолчанию.

...