我正在使用(來自Nuget包) Ninject 2.2和Fluent NHibernate 1.3(引擎蓋下的NHibernate v3.2),我碰到了一堵磚牆。ReflectionPermission在中信任環境中使用Ninject 2.2,流利NHibernate
我用流利的配置指向我的數據庫,映射等:
var fluentConfig = Fluently.Configure()
(MsSqlConfiguration.MsSql2008.DoNot.UseReflectionOptimizer()
.ConnectionString(c => c.FromConnectionStringWithKey("ExampleDB")))
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<ExampleMap>()
.Conventions.Add(FluentNHibernate.Conventions.Helpers.DefaultLazy.Never()))
.ExposeConfiguration(x => x
.SetProperty("current_session_context_class", "web"))
.ExposeConfiguration(BuildSchema);
作品美化我的地方箱,直到我設置<信任級別的代碼=「中等」 />到鏡像我的託管服務提供商,然後開始barf。
的問題行是2人在這個代碼塊
Bind<Configuration>().ToConstant(fluentConfig.BuildConfiguration());
Bind<ISessionFactory>().ToConstant(fluentConfig.BuildSessionFactory());
Bind<ISession>().ToMethod(x => GetRequestSession(x));
我收到的例外: 」 ......請求類型System.Security.Permissions.ReflectionPermission的」許可.. ..失敗「
有沒有人有任何建議? 到目前爲止,我的調查結果只是基於舊版Ninject和NHibernate的過時信息,或者涉及反編譯X以解除Y的解決方案......我寧願不這樣做!
問這個問題,現在我已經轉移到支持完全信任託管服務提供商之間。儘管如此,我仍然想知道是否有辦法讓FNHB成爲中型信託環境。 – Greg 2012-05-11 10:52:17