null 허용 int가있는 클래스가 있습니까? 데이터 유형을 xml 요소로 serialize하도록 설정합니다. 값을 null로 설정하면 xml serializer가 요소를 serialize하지 않도록 설정하는 방법이 있습니까?nullable int를 serialize
[System.Xml.Serialization.XmlElement (IsNullable = false)] 특성을 추가하려고 시도했지만 "IsNullable이 아닐 수 있으므로 형식을 반영하는 오류가 있음을 나타내는 런타임 직렬화 예외가 발생합니다 'false'로 Nullable 형식을 설정하십시오. 'System.Int32'형식을 사용하거나 XmlElement 특성에서 IsNullable 속성을 제거하는 것이 좋습니다. "
<Score xmlns="http://mycomp.com/test/score/v1">
<ID xsi:nil="true" />
</Score>
하지만 주로 내가 MSSQL에서 OPENXML을 사용하는 경우 때문에, 전혀 ID 요소를 원하지 않는 null이 ID에 대한
는, 그것은을 반환[Serializable]
[System.Xml.Serialization.XmlRoot("Score", Namespace = "http://mycomp.com/test/score/v1")]
public class Score
{
private int? iID_m;
...
/// <summary>
///
/// </summary>
public int? ID
{
get
{
return iID_m;
}
set
{
iID_m = value;
}
}
...
}
위의 클래스에 직렬화합니다 모양이 null 인 요소에 대해서는 null 대신 0이됩니다.
XmlSerializer는 [Foo} Specified 패턴도 지원합니다. –
관련 페이지가 여기에 있습니다 : http://msdn.microsoft.com/en-us/library/53b8022e%28VS.71%29.aspx – cbp
어떤 방법으로 자동 생성 속성이있는 ShouldSerialize를 사용할 수 있습니까? 즉 지역 변수가 없습니다. –
Jay