2012-08-01 3 views

답변

1

아마도 Model 클래스에는 Collection 컬렉션의 JSON 표현을 유지해야하는 다른 문자열 속성이 있어야합니다. 그 속성은 귀하의 표에 매핑됩니다. 컬렉션 속성을 테이블에 매핑하지 마십시오. 이

public class Customer 
{ 
    public int ID { set;get;} 
    public string JsonData { set;get;} 
    [NotMapped] 
    public ICollection<string> Items { set;get;} 
} 

추천하고 테이블에 데이터를 saivng 전에 무엇인가, 당신은 Items PROPERT 값을 읽어 JsonData 속성 값을 입력해야합니다.

JavaScriptSerializer ser= new JavaScriptSerializer();  
string JsonData= ser.Serialize(Items); 

Bytheway, JSON 표현을 테이블에 저장 하시겠습니까? 왜 마스터 - 세부 접근 방식을 사용하지 마십시오. 정규화 된 테이블에 JSON 데이터를 저장하십시오. JSON을 다시 빌드하고자 할 때마다 C#에서이 작업을 수행 할 수 있습니다.

+0

그래, 그게 해결 방법이 될 수 있지만 몇 가지 * 공식적인 접근법이 있는지 궁금 해서요. 추가 또는 업데이트 할 때 인터셉터와 같은 것이므로 일부 엔티티 속성 지속성을 변환하고 사용자 정의 할 수 있습니다. –

+0

"업데이트"정보. 또 다른 해결 방법입니다. NHibernate에서는 사용자 정의 유형을 구현할 수 있으므로 일반 등록 정보를 사용하고 데이터베이스에 저장하는 방법을 정의 할 수 있습니다. 나는 이와 같은 것을 찾고있었습니다. –

관련 문제