nhibernateは、誰かがリクエストするたびに、またはアプリケーションの起動時に1回だけxmlファイルを解析しますか?ここにもnhibernate開始パフォーマンス
はイムがやって何です:
public class SessionManager
{
private readonly ISessionFactory _sessionFactory;
public SessionManager()
{
_sessionFactory = GetSessionFactory();
}
public ISession GetSession()
{
return _sessionFactory.OpenSession();
}
private static ISessionFactory GetSessionFactory()
{
return Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2005
.ConnectionString(c =>
c.Is(
@"Data Source=Pc-De-Yassir;Initial Catalog=MyDatabase;User Id=sa;Password=password;Integrated Security=True")
))
.Mappings(m =>
m.AutoMappings.Add
(
AutoPersistenceModel.MapEntitiesFromAssemblyOf<Model.Category>()
))
.BuildSessionFactory();
}
}
、ここでは、私は、データベースからデータを取得する方法である
public IList<Category> GetCategories()
{
var session = new SessionManager().GetSession();
return session.CreateCriteria(typeof(Category))
.List<Category>();}
だから私の質問は、NHibernateは、それ自体が、この方法は、最初に実行する時間を設定しますされますか、要求が行われるたびに?
..アプリの起動時に一度だけ発生するはずです。 –
はい。しかし明らかにあなたがそれを書いた方法に依存します... –