인터페이스에 모델 클래스를 다시 고려 중입니다. 모델 클래스는 Linq-to-SQL을 사용하여 자동 생성됩니다.디커플링을 위해 Linq-to-SQL과 인터페이스 사용
class FooRepository
{
// ...
public void Add(IFoo foo)
{
db.Foos.InsertOnSubmit(foo);
}
}
InsertOnSubmit 메서드는 IFoo가 아닌 Foo의 인스턴스를 사용합니다. 인스턴스를 인라인으로 (Foo)로 캐스팅 할 수 있지만이 방법이 더 효과적입니다.
이미 StructureMap을 사용하고 있습니다. Add 메서드에 특성을 추가하여 매핑을 기반으로 형식을 확인할 수 있습니까?
또는 모델 클래스 메서드 중 하나를 재정의하거나 부분 이벤트를 사용하여이를 수행 할 수 있습니까?
내 컨트롤러는 모델 인터페이스를 사용하여 ViewModel 개체로 변환합니다. 데이터 액세스/저장소 영역을 제외하고는 LINQ 모델을 사용하지 말고 다른 클래스에 매핑한다는 내용을 듣습니다. 인터페이스를 사용하면 한 영역에서 변경을 관리하고 다른 영역에 영향을주지 않으면 서 많은 유연성을 얻을 수있었습니다. – blu
+1하지만 나쁜 대답이 아니기 때문에 지금 당장은 내가 찾고있는 것이 아닙니다. – blu
인터페이스의 속성을 정의하고 클래스의 속성을 정의 할 때 이상적인 클래스의 클래스가 과도 할 수있는 인터페이스를 사용하는 것 같습니다. 나는 사용하는 경향이있다 클래스 사용자 { public String Name {get; 세트; } } 인터페이스의 클래스가 인터페이스와 동일합니다. –