2016-07-19 4 views
0

몇 가지를 추가해야하는 자동 생성 엔터티 클래스가 있습니다. 새로운 클래스를 만들고 나서 새로운 클래스에 unbox하고 rebox하려고 시도했지만 많은 일처럼 보였습니다.엔터티 프레임 워크에서 자동 생성 클래스 확장

여전히 Entity 모델을 활용할 수 있지만 클래스에 사용자 지정 사항을 추가 할 수있는 더 좋은 방법이 있습니까?

public partial class SaveQuotes 
{ 
    public int TableID {get; set;} // Auto Generated 
    public string Column1 {get; set;} // Auto Generated 
    public string Column2 {get; set;} // Auto Generated 

    // My custom additions needed 
    public List<EdmundsVehicleInfo> EdmundsVehicleInfo {get; set;} 
    public List<EdmundsPhoto> EdmundsPhoto {get; set;} 

    // Auto Generated 
    public virtual ContractTypes ContractTypes {get; set;} 
} 

이제 모델을 업데이트하면 파일을 다시 쓰게되므로 사용자 지정 항목이 제거됩니다. 다시 쓰지 않고도이 클래스에 물건을 추가 할 수있는 방법이있을 것이라고 확신합니다.

답변

4

이것은 EF 툴링에서 예상 한 유스 케이스입니다.

class 정의에서 partial 키워드를 사용하고 있습니다. 같은 partial 키워드로 두 번째 파일을 만들고 클래스 정의를 두 파일에 분산시킬 수 있습니다.

도구는 사용자 지정 코드가있는 새 파일이 아니라 원래 파일을 덮어 씁니다.

부분 클래스에 대한 자세한 내용을 보려면 check this msdn article.

+0

나는 이것에 대해 알지 못한다는 것을 인정하고 싶다. 오랫동안 엔터티를 해왔다. ....... –

+0

@JamesWilson VS에서 대부분의 자동 생성 코드에 대한 일반적인 패러다임이다. 잠시 동안 이것을하지 않았습니까 ... EF Code-first는 이것을 필요로하지 않습니다. – spender

+0

코드 우선을 살펴 보았지만, 우리가 사용하는 주요 데이터베이스는 코드가 처음으로 올라간 것처럼 보이는 제 3 자의 미러 된 읽기 전용 DB이므로 문제를 일으키는 것처럼 보였습니다. –

관련 문제