asp.net mvc 응용 프로그램에 subsonic 저장소 패턴 (2.1)을 사용하고 있습니다. 내 응용 프로그램에는 categoryRepository, Blogrepository 등 많은 저장소가 있습니다.이 저장소 각각에 대해 아음속 전화 인 DB.Select().From()...ExecuteReader()
을 호출하고 해당 판독기에서 도메인 개체를로드하고 있습니다. .subsonic 2.1 (저장소 패턴)을 사용할 때 단위 작업 패턴을 구현하는 방법은 무엇입니까?
컨트롤러 작업에서 나는이 리포지토리로부터 여러 번 전화를 겁니다.
List<IBlog> blogs=_blogRepository.GetHottestBlogs();
List<ICategory> categories=_categoryRepository.GetAll();
내가 이것에 대한 어떤 UnitOfWork에 패턴을 구현해야합니까? 누군 의심의 여지가 각 작업의 DB.Update이/삽입/선택 됐나 방법 아음속가 행하는
TransactionScope
일괄 업데이트에 대한 충분하다는 것이다 또는 내가 사용해야합니까 더 나은 성능을 얻으려면
SharedDbConnectionScope
?
Thanks for Many. TransactionDope를 SharedDbConnectionScope 전에 사용하려고했습니다. 서브 소닉 라이브러리와 함께 제공되는 단위 테스트에서 어떻게 수행되는지. –
예, 얼마 전 문서에서 잘못되었습니다. 그러나 DB Lib이 TransactionScope를 구현하는 방법에 따라 다릅니다. AfiSql Sql Server는 SqlConnection을 생성 할 때 Transaction.Current를 찾고 MySql은 MySqlConnection을 생성 한 후에 TransactionScope를 지원합니다. 그러나 SubSonic은 여러 DBMS를 지원하기 때문에 먼저 SharedDBConnectionScope를 사용하는 것이 좋습니다. –