linq을 사용하여 Nhibernate를 사용하여 데이터베이스에 일부 select 쿼리를 발생시킵니다.Fluent에서 생성 한 쿼리를 아는 방법 NHibernate
Fluent NHibernate가 생성 한 쿼리는 궁금한 점입니다.
linq을 사용하여 Nhibernate를 사용하여 데이터베이스에 일부 select 쿼리를 발생시킵니다.Fluent에서 생성 한 쿼리를 아는 방법 NHibernate
Fluent NHibernate가 생성 한 쿼리는 궁금한 점입니다.
SQL을 log4net에 넣으려면 구성 섹션에서 로거를 설정해야합니다.
NHibernate 패키지를 "INFO"에 놓으면 노이즈와 NHibernate.SQL을 모두 줄여서 모든 SQL 문을 기록 할 수 있습니다.
<logger name="NHibernate"> <level value="INFO" /> </logger> <logger name="NHibernate.SQL"> <level value="ALL" /> </logger>
this을 참조하십시오. 필요한 것은 hibernate.show_sql
입니다.
thanks .. ............. –
Fluent NHibernate로 어떻게 구성합니까? –
,이 같은 show_sql
을 설정할 수 있습니다 :
Fluently.Configure()
.Database(MsSqlConfiguration.MsSql2005.ShowSql().ConnectionString(...))...
NHibernate에 지금 Console.Out
에 모든 SQL 문을 인쇄합니다.
안녕하세요 Kevin, 게시 해 주셔서 감사합니다. Log4Net을 사용하여 생성 된 SQL을 파일로 전송하도록 설정했는지 궁금합니다. – 5x1llz
이것은 매우 실망 스럽습니다. 이것이 왜 작동하지 않는지 어떤 생각? 내 콘솔을 통해보고 있는데, 거기에 있지 않습니다. – Milimetric
또한이 유용한 http://nhprof.com/
당신은 너무 this one 같은 SQL 프로파일을 사용할 수 있습니다 찾을 수 있습니다.
log4net을 연결할 수도 있습니다.
확실히 NHProf을 구입하여 사용하십시오. 이것은 멋진 제품이며, 실행중인 질의를 보여줄뿐만 아니라 NHibernate 매핑과 질의에 대한 잠재적 성능 문제를 보여줍니다.
나는 nhibernate와 유창한 nhibernate에서 SQL 쿼리를 아는 4 가지 옵션을 발견했다.
인터셉터 - SQL을 보는 것이 좋습니다. 우리는 Visual Studio의 Output과 심지어 로그 파일에 넣을 수 있습니다.
ISessionFactory sf = Fluently.Configure()
.Database(MySQLConfiguration.Standard.ConnectionString(ConnectionString).ShowSql())
.Mappings(m => m.FluentMappings.AddFromAssemblyOf<Stock>())
.ExposeConfiguration(c => c.SetInterceptor(new ABCInterceptor()))
.BuildSessionFactory();
public class ABCInterceptor : EmptyInterceptor
{
public override NHibernate.SqlCommand.SqlString OnPrepareStatement(NHibernate.SqlCommand.SqlString sql)
{
Trace.WriteLine(sql.ToString());
return sql;
}
}
유창함 NHibernate에이 ** ** 모든 쿼리를 생성하지 않습니다. 그것들을 생성하는 NHibernate입니다. –
이 질문은 도움이 될 것이라고 생각합니다. http://stackoverflow.com/questions/474659/how-to-log-sql-calls-with-nhibernate-to-the-console-of-visual-studio – HerbalMart