0
안녕하세요. 아래처럼 XML을 작성하여 문자열로 변환해야합니다.C# .Net에서 XMLDocument 빌드
XML의 값이 동적으로 변경됩니다.
의견이 있으십니까?
<?xml version='1.0' encoding='utf-8'?>
<Message release='001' version='008' xmlns='http://www.ncpdp.org/schema/SCRIPT'>
<Header>
<To Qualifier='ZZZ'>xxxxxxx</To>
<From Qualifier='ZZZ'>xxxxxxx</From>
<MessageID>xxxxxx</MessageID>
<SentTime>2002-09-30T08:15:22</SentTime>
<Security>
<UsernameToken>
<Username/>
</UsernameToken>
<Sender>
<SecondaryIdentification>xxxxxxxxx</SecondaryIdentification>
</Sender>
<Receiver>
<SecondaryIdentification>xxxxxxxxxxx</SecondaryIdentification>
</Receiver>
</Security>
<TestMessage>1</TestMessage>
</Header>
<Body>
<RxHistoryRequest>
<RxReferenceNumber>POCDH1</RxReferenceNumber>
<Prescriber>
<Identification>
<NPI>xxxxxxx</NPI>
<DEANumber>xxxxxxxx</DEANumber>
</Identification>
<Name>
<LastName>JONES</LastName>
<FirstName>MARK</FirstName>
</Name>
<PhoneNumbers>
<Phone>
<Number>6152219800</Number>
<Qualifier>TE</Qualifier>
</Phone>
</PhoneNumbers>
</Prescriber>
<Patient>
<PatientRelationship>1</PatientRelationship>
<Name>
<LastName>PALTROW</LastName>
<FirstName>BRUCE</FirstName>
<MiddleName>K</MiddleName>
</Name>
<Gender>M</Gender>
<DateOfBirth>1954-12-25</DateOfBirth>
</Patient>
<BenefitsCoordination>
<PayerIdentification>
<PayerID>PBM123</PayerID>
</PayerIdentification>
<PayerName>INSURANCE COMPANY NAME</PayerName>
<CardholderID>MEMBERID</CardholderID>
<CardholderName>PALTROW, BRUCE</CardholderName>
<GroupID>B000000</GroupID>
<Consent>Y</Consent>
<PBMMemberID>B000000%111111110%001</PBMMemberID>
</BenefitsCoordination>
</RxHistoryRequest>
</Body>
</Message>
나는 내가 필요로 잘 돌고 내 방법
RxHistoryRequest RxHReq = new RxHistoryRequest();
RxHReq.version = "008"; //ConfigurationManager.AppSettings["SSversion"];
RxHReq.release = "001"; //ConfigurationManager.AppSettings["SSrelease"];
//declare values to the rest of the Properties
//then
MemoryStream memoryStream = new MemoryStream();
XmlTextWriter xmlTextWriter = new XmlTextWriter(memoryStream, Encoding.UTF8);
XmlSerializer xs = new XmlSerializer(typeof(RxHistoryRequest));
xs.Serialize(xmlTextWriter, RxHReq);
XmlSerializerNamespaces ns = new XmlSerializerNamespaces();
ns.Add("messaging","http://www.ncpdp.org/schema/SCRIPT");
//ConfigurationManager.AppSettings["SurescriptsNamespace"]
memoryStream = (MemoryStream)xmlTextWriter.BaseStream;
ASCIIEncoding encoding = new ASCIIEncoding();
byte[] data = memoryStream.ToArray();
일부에서이
처럼 만들기 직렬화 클래스
[Serializable]
[XmlRoot("Message", Namespace = "http://www.domain.com/messaging")]
public class RxHistoryRequest
{
[XmlAttribute]
public string version = string.Empty;
[XmlAttribute]
public string release = string.Empty;
[XmlAttribute("schemaLocation", Namespace = XmlSchema.InstanceNamespace)]
public string xsiSchemaLocation = ConfigurationManager.AppSettings["Namespace"] + " " +
ConfigurationManager.AppSettings["SS_DirectorySchema"];
public Header Header = new Header();
public RxHistory Body = new RxHistory();
}
//rest of the Properties in the classes
그리고 뭔가를 시도했다.
그리고 얼마나 남았습니까? –
.NET을 사용하여 XML 데이터를 생성하고 조작하는 데 필요한 다양한 내장 클래스가 있으며 설명서는 매우 광범위하고 직관적입니다. 정확히 어떤 부분에 문제가 있습니까? – mellamokb
@JonSkeet 상태가 – HaBo