ODBC를 통해 Progress/OpenEdge 데이터베이스와 함께 NHibernate를 사용할 수 있도록 사용자 지정 dialect를 만들었습니다. 대부분의 경우 방언은 잘 작동하지만 SELECT TOP 문에 문제가 있습니다. 는 A 매개 변수로 반환하는 열의 양에 다음과 같은 문제는 문이 생성되는 것입니다 :OpenEdge 데이터베이스에 NHibernate 사용자 정의 언어를 사용하여 최상위를 선택하십시오.
이SELECT TOP ? SomeColumn
FROM SomeTable
where SomeColumn = ?; p0 = 100, p1 = 'test'
진행률/Openedge 데이터베이스가이 기능을 지원하지 않는, 그래서 방언을 일부 변경하고 싶습니다 SELECT TOP의 열 양에 대한 매개 변수를 사용하지 않도록 명령문을 강제 실행하십시오.
이것이 가능합니까? 자 NHibernate V를 사용하는 방법 임. 3.3.1
나는 이것을 시도했지만 Dialect.GetLimitString 메서드에서 "Dialect는 가변 제한을 지원하지 않습니다."라는 예외를 얻을 것입니다. - 제한 매개 변수가 null 인 동안 limitparameter 매개 변수가 null이 아니기 때문에 발생합니다 ... – BackendA
@Reimer 내 편집 참조 ... –
소스 코드 수정이 트릭을 수행했습니다. 대단히 감사합니다. – BackendA