1

私は(Nugetパッケージから) Ninject 2.2とFluent NHibernate 1.3(フードの下のNHibernate v3.2)を使用していますが、レンガの壁にぶつかりました。

データベースやマッピングなどを指すために Fluent config を使用しています。

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);

< trust level="Medium" />を設定してホスティングプロバイダーをミラーリングし、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 を解放することを含む解決策しか見つかりませんでした。

4

1 に答える 1

2

NuGet のバージョンではなく、中程度の信頼のビルドを使用してください: https://github.com/ninject/ninject/downloads

于 2012-02-29T16:56:19.410 に答える