나는 보통 데이터베이스 연결을 직접 만들고`{} {} '을 사용하여 수명을 수동으로 제어하려고합니다. 예를 들면 다음과 같습니다.비즈니스 개체에 데이터베이스 연결을 캡슐화했는지 여부를 확인하려면?
이렇게하면 적절하게 정리해야하는 리소스를 사용하고 있습니다. 그러나 이것은 반복적 인 노력을 많이하게됩니다. 비즈니스 객체 내부에서 SQL 연결을 생성하고 IDisposable을 구현하려고합니다. Dispose() 메서드에서 연결을 닫습니다.
using(BusinessObject myBusinessObject = new BusinessObject()) {
// do stuff with myBusinessObject
...
}
문제는 내가 사용하고있는 것을 볼 때까지 비즈니스 객체를 삭제해야한다는 것이 명백하지 않을 수 있다는 것입니다.
어떻게할까요?
대답 주셔서 감사합니다. 여기에 대해 생각하는 코드는 매우 간단합니다. 과거에 NHibernate를 사용했는데,이 프로젝트를 위해 거기에 가고 싶지 않다. 그러나 당신이 말했듯이, 아마 소스를 통한 스핀이 좋은 운동이 될 것입니다. – dnewcome
nHibernate가 너무 많이 보인다면 LINQtoSQL을 고려하십시오. 내 경험에 비추어 볼 때 매우 가볍습니다.L2S 엔티티를 DTO로 간주하거나 부분 클래스/메소드로 확장하여 본격적인 비즈니스 객체로 사용할 수 있습니다. – tvanfosson