1
我需要調用接受xml文件作爲對象的第三方web服務。調用接受xml文件作爲對象的webservice時出現異常
-<Claims>
-<Claim>
<ID>ID1</ID>
-<Person>
<ID>ID1</ID>
</Person>
-<Encounter>
<Type>1</Type>
</Encounter>
-<Diagnosis>
<CodeTerm>ICD10</CodeTerm>
<Type>Principal</Type>
<Code>A12.0</Code>
</Diagnosis>
-<Activity>
<ID>ID1</ID>
<CodeTerm>ADA</CodeTerm>
<Start>12/02/2013 12:12</Start>
<Code>84132</Code>
<Quantity>0</Quantity>
</Activity>
</Claim>
</Claims>
我已經創建了一個樣本類並硬編碼了該值。調用Web服務時獲取以下異常。
**System.InvalidOperationException**
Additional information: There was an error generating the XML document.
Message: **The type CallingWebserviceTest.Claims was not expected. Use the XmlInclude or SoapInclude attribute to specify types that are not known statically.**
Code:
XDocument doc = XDocument.Load(FILENAME);
Claims c = new Claims();
List<ClaimsClaim> c1 = new List<ClaimsClaim>();
ClaimsClaim cc = new ClaimsClaim();
cc.claimID = "ID1";
cc.personID = "ID1";
cc.encounterType = 1;
cc.codeTerm = "ICD10";
cc.codeType = "A12.0";
cc.activityID = "ID1";
cc.codeTerm = "ADA";
cc.start = "12/02/2013 12:12";
cc.activityCode = 84132;
cc.quantity = 0;
c1.Add(cc);
c.claims = c1;
Console.WriteLine(cc.personID);
Gway g = new Gway();
responseClaimEdit[] responce;
string msg;
Console.WriteLine(g.DCG("1", c, "NS028", "|N28", out responce, out msg).ToString());
Class:
[XmlInclude(typeof(ClaimsClaim))]
[Serializable]
[XmlRoot]
public class Claims
{
public List<ClaimsClaim> claims { get; set; }
}
[Serializable]
public class ClaimsClaim
{
public string claimID { get; set; }
public string personID { get; set; }
public int encounterType { get; set; }
public string codeTerm { get; set; }
public string codeType { get; set; }
public string code { get; set; }
public string activityID { get; set; }
public string activityCodeTerm { get; set; }
public string start { get; set; }
public int activityCode { get; set; }
public int quantity { get; set; }
}
任何人都可以在這裏幫忙嗎? Web服務中不能做任何改變。
我不知道,要聯繫服務提供商。然而ü可以PLZ告訴我如何通過這 - <?XML版本=「1.0」編碼=「UTF-8」?> –
是的,我明白了,但如何在我的類中添加呢? –
正常情況下,我提到的這一行應該是標準XML文件中的第一行。一些類庫會在沒有這條線的情況下處理一個XML文件,但其中一些不會處理並且需要它。 您可以通過在文件的開頭插入該行並重新運行應用程序,看它是否有差別做一個簡單的測試。 另外,看着錯誤消息,「CallingWebserviceTest.Claims不是預期的」,好像調用客戶端應用程序不知道Claim類是什麼。這只是一個猜測,但這也可能是一個問題。 –