에해제 공간이 후, 객체를 직렬화하기 위해 다음 코드를 사용하고 직렬화
using (MemoryStream memoryStream = new MemoryStream()) { try { XmlWriterSettings writerSettings1 = new XmlWriterSettings(); writerSettings1.CloseOutput = false; writerSettings1.Encoding = System.Text.Encoding.UTF8; writerSettings1.Indent = false; writerSettings1.OmitXmlDeclaration = true;
XmlWriter writer1 = XmlWriter.Create(memoryStream, writerSettings1);
XmlSerializer xs1 = new XmlSerializer(obj.GetType(), string.Empty);
xs1.UnknownAttribute += new XmlAttributeEventHandler(xs1_UnknownAttribute);
xs1.UnknownElement += new XmlElementEventHandler(xs1_UnknownElement);
xs1.UnknownNode += new XmlNodeEventHandler(xs1_UnknownNode);
xs1.UnreferencedObject += new UnreferencedObjectEventHandler(xs1_UnreferencedObject);
xs1.Serialize(writer1, obj);
writer1.Close();
}
catch (InvalidOperationException)
{
return null;
}
memoryStream.Position = 0;
serializeObjectDoc.Load(memoryStream);
return serializeObjectDoc.DocumentElement;
속성 {특성, 이름 = "xmlns : xsi", Value = "http://www.w3.org/2001/XMLSchema-instance"} 개체 {System.Xml.XmlAttribute} {Attribute, Name = "xmlns : xsd", Value = "http : //www.w3.org/2001/XMLSchema "} object {System.Xml.XmlAttribute}
이 두 속성을 비활성화하는 방법을 알고 싶습니다.
왜 이러한 속성을 "비활성화"하시겠습니까? 그들은 아무 것도 해를 입히지 않아야합니다. –
그들은 가상의 진술입니다. 내 요소에 추가 속성을 원하지 않는 이유는 무엇입니까 .BCos 다른 구성 요소에 의해 읽은 XML에서 동일한 노드를 사용하고 있습니다. 나는 정확히 동일한 입력을 얻고 싶습니다. – Ravisha
편집 중 롤백 중입니다. 번역. 수정이 필요하면 의견을 입력하십시오 – Ravisha