0
因此,如果我做錯了任何事情,我都會忍受。 我一直在試圖更新從C#在導航的一些數據,但我無論做什麼我得到的錯誤:NAV Web Service如何通過C#更新數據?
我的代碼單元看起來是這樣的,這是我的方法,我需要使用更新:
<operation name="OpdaterVogn">
<operation soapAction="urn:microsoft-dynamics-schemas/codeunit/BMG:OpdaterVogn"style="document"/>
<input name="OpdaterVogn">
<body use="literal"/>
</input>
<output name="OpdaterVogn_Result">
<body use="literal"/>
</output>
</operation>
生病顯示ü我的對象我得到通過我codeunit藏漢通過:
<schema elementFormDefault="qualified" targetNamespace="urn:microsoft-dynamics-nav/xmlports/x78001">
<complexType name="VognType">
<sequence>
<element minOccurs="1" maxOccurs="1" name="Kode" type="string"/>
<element minOccurs="1" maxOccurs="1" name="RegNr" type="string"/>
<element minOccurs="1" maxOccurs="1" name="Beskrivelse" type="string"/>
<element minOccurs="1" maxOccurs="1" default="false" name="Spaerret" type="boolean"/>
</sequence>
</complexType>
<complexType name="Vogn" mixed="true">
<sequence>
<element minOccurs="1" maxOccurs="unbounded" name="Vogn" type="tns:VognType"/>
</sequence>
</complexType>
<element name="Vogn" type="tns:Vogn"/>
</schema>
無論如何,移動到C#,我可以得到的數據到C#和審查。現在我想用該方法更新「vogn」。
此刻我的代碼如下所示:
BMGWS ws = new BMGWS();
Vogn vogne = new Vogn();
VognType vogn = new VognType();
ws.UseDefaultCredentials = true;
ws.SendVogn("BMG 2013", false, ref vogne);
vogn = vogne.Vogn1[0];
string kode = vogn.Kode;
string beskrivelse = vogn.Beskrivelse;
string regnr = vogn.RegNr;
bool spaerret = vogn.Spaerret;
Vogn vogneNy = new Vogn();
VognType vognNy = new VognType();
vognNy.Kode = kode; // string value to update
vognNy.Beskrivelse = beskrivelse; // string value to update
vognNy.RegNr = regnr; // string value to update
vognNy.Spaerret = spaerret; // Bool value to update
List<VognType> list = new List<VognType>();
list.Add(vognNy);
vogneNy.Vogn1 = list.ToArray();
vogneNy.Vogn1[0] = vognNy;
ws.OpdaterVogn("BMG 2013", vogneNy);
我的最後一個方法不會工作,我得到以下錯誤:
{「元素<Kode>
由閔預期發生值:一次。元接收:<>
「}
希望你們能幫助我在這裏...