2016-10-01 2 views
3

클래스와 속성이 있습니다. 나는 Entity Framework를 MySQL과 함께 사용하고 있습니다. add-migration을 사용하여 마이그레이션 한 후 INT(11) 열을 생성합니다. 하지만 VARCHAR이 필요합니다. 부서 또는 학점이 필요하기 때문입니다.Entity Framework에서 문자열 열거 형

많이 시도했지만 시도하지 않았습니다.

어떻게하면됩니까?

public class trns 
{ 
    public trans_type enm_trans_type { get; set; } 
} 

public enum trans_type { 
    [Description("Dept")] 
    Dept, 
    [Description("Credit")] 
    Credit 
} 
+0

CodeFirst를 사용하면 다음과 같은 버전이 필요합니다. http://stackoverflow.com/questions/7437952/map-string-column-in-entity-framework-to-enum 좋은 기사 http://nodogmablog.bryanhogan.net/2014/11/saving-enums-as-strings-with-entity-framework/ –

+0

네, 맞습니다. http://nodogmablog.bryanhogan.net/2014/11/saving-enums-as-strings-with-entity-framework/ – caras

답변

1

열거 형은 정수 값을 기반으로하며 EF는 열 뒤에 enum 값을 저장하기 위해 int 열을 만듭니다. 설명 대신 enumn의 int 값을 데이터베이스에 저장하고 찾아보기 테이블을 사용하는 것이 좋습니다. 그런 다음 단일 조인을 사용하여 설명을 간단하게 얻을 수 있습니다. ef-enum-to-lookupTim Abell까지 사용할 수 있습니다.

관련 문제