NHibernate를 사용 중이고 로컬 SQLExpress 데이터베이스에서 Oracle11g로 전환했습니다.NHibernate의 adonet.batch_size 설정이 무시되는 이유는 무엇입니까? - session.SetBachSize()는 예외를 throw합니까?
내 코드가 불평하기 시작했습니다. 세션 객체 메소드 SetBatchSize()는 System.NotSupported 예외가 발생합니다 :
없음 배치 크기는 세션 팩토리에 대해 정의되지 않았다, 일괄 처리가 불가능합니다. 일괄 처리를 사용하려면 adonet.batch_size = 1로 설정하십시오.
SQLExpress 데이터베이스에서 작동했습니다. 좋아요, 그래서 이걸 덧붙였습니다.
<property name="adonet.batch_size">1</property>
config로 설정했지만 여전히 동일한 예외가 발생합니다. 세션 고점 속성이
값으로 설정됩니다 : {NHibernate.AdoNet.NonBatchingBatcher}
유형 : NHibernate.Engine.IBatcher {NHibernate.AdoNet.NonBatchingBatcher}
배치 크기를 트랜잭션 내부 또는 외부로 설정하려고해도 아무런 차이가 없습니다.
그래서 oracle xe는 배터가 없으므로 SetBatchSize() 호출을 시도하거나 잡아야합니다. – mrt181
하나의 전역 batch_size를 지정하거나 SetBatchSize()를 사용하여 재정의해야합니까? – Firo
나는 이것을 해왔다. 그리고 나는 아직도 내가 그것을 사용하고 싶다면 항상 SetBatchSize()를 시도해야한다는 것을 안다. – mrt181