Castle と wcf を使用してこの NHibernatefacility のことを理解しようと 3 日間試みてきましたが、本当にイライラしています。
十数個のエラーを解決した後、かなり明らかなエラーにたどり着きましたが、解決できません。
これは私の global.asax の Application_Start です
container.AddFacility<AutoTxFacility>();
container.Register(Component.For<INHibernateInstaller>().ImplementedBy<NHibernateInstaller>());
container.AddFacility<NHibernateFacility>();
container.AddFacility<WcfFacility>();
container.Register(
Component.For<IAuthService>().ImplementedBy<AuthService>().LifestylePerWcfOperation(),
Component.For<IUserRepository>().ImplementedBy<UserRepository>().LifestylePerWcfOperation(),
Component.For<IActionWebService>().ImplementedBy<ActionWebService>().Named("ActionWebService").LifestylePerWcfOperation(),
Component.For<ISession>().LifeStyle.PerWcfOperation().UsingFactoryMethod(x => container.Resolve<ISessionManager>().OpenSession()));
これは最初のリクエストで機能します。その後、このエラーが発生します。
工場は廃棄され、使用できなくなりました。オブジェクト名: 「これ」。
この行のユーザーリポジトリでエラーが発生しています
[Transaction]
public virtual User GetUserByCredentials(string email, string password)
{
using (var tx = session())
{
return tx.QueryOver<User>().Where(x => x.Email == email && x.Password == password).SingleOrDefault();
}
}
これはライフスタイルと関係があると感じています。複数の組み合わせを試しましたが、うまくいきませんでした。この時点で何をすべきかわかりません。私はすべての設備 (生活を楽にするはずの) を備えたこのキャッスルに乗り込みましたが、ドキュメントがないために非常に複雑です。これらすべてをまとめて実装するための降下ガイドを見つけることができませんでした.4歳ではないことは言うまでもありません.
助けてください!