1

먼저 - NHibernate를 처음 사용했습니다.NHibernate 기존 데이터베이스와 디자이너를 사용하지 않는 매핑을 만들려면

VS 2010에서 클라이언트 용 C# 및 MVC3을 사용하여 응용 프로그램을 만들고 있습니다. 클라이언트는 수백 개의 테이블을 가진 거대한 데이터베이스를 가지고 있으며 애플리케이션은 그 중 몇 개의 데이터 만 읽어야합니다.

클라이언트가 웹 서버에 응용 프로그램을 설치하면 해당 데이터베이스에 대한 연결 문자열을 지정해야하며 테이블 이름도 web.config 또는 그와 비슷한 위치에서 읽어야합니다. 앱이 데이터를 읽는 테이블의 열은 알려져 있지만 (기본적으로 ID와 몇 개의 필드 만 있음) 테이블의 이름을 알 수 없으므로 (테이블 이름의 형식은 "CompanynameTablename"이어야 함) 클라이언트가 지정해야합니다.

심지어 NHibernate에서 가능합니까? 그렇다면 어떻게 할 수 있습니까?

답변

1

이 경우 ADO.Net 및 DataSets를 사용하는 것이 더 나을 것 같다고 생각하십시오.

3

예, 가능합니다. 귀하의 질문에 올바르게 답을 얻으려면 고도로 구성 가능한 매핑을 만들어야합니다. 이렇게하려면 표준 hbm xml 파일 대신 N H 3.x mapping by code 솔루션을 사용할 수 있습니다. 이를 통해 cfg 파일에 테이블 이름 만 넣고 매핑 전략을 코드로 작성할 수 있습니다. 어쨌든 NH를 사용하는 데 새로운 사람이라면 최종 솔루션을 구현하기 전에 스스로 훈련하는 것보다 더 표준적인 솔루션을 사용해야 할 것입니다. 어쨌든 신경 써서, 뉴 햄프셔는 OR/M이며,지도 협회 및 컬렉션, 신원지도, 자동 지속성 등에 사용하는 경우에만 혜택을받을 수 있습니다. Micro Orm을 Dapper으로 사용하는 것이 더 나을 것이라고 생각하십시오.

관련 문제