我在.NET中通過http://api5.silverpop.com/SoapApi?wsdl使用Web服務接口。對於Silverpop的ExportList請求,查詢中的標籤只允許標準屬性,即LIST_ID,EXPORT_TYPE,EXPORT_FORMAT,ADD_TO_STORED_FILES,DATE_START和DATE_END;但是我需要發送額外的COLUMN屬性作爲我的請求的一部分。我試圖找出如何擴展參考文件以支持其他字段。如何將標籤添加到.NET中的Web服務引用?
標準/默認屬性:
<Envelope><Body>
<ExportList>
<LIST_ID>56008</LIST_ID>
<EXPORT_TYPE>ALL</EXPORT_TYPE>
<EXPORT_FORMAT>CSV</EXPORT_FORMAT>
<ADD_TO_STORED_FILES/>
<DATE_START></DATE_START>
<DATE_END></DATE_END>
</ExportList>
</Body></Envelope>
的XML文件,我希望構造:
<Envelope>
<Body>
<ExportList>
<LIST_ID></LIST_ID>
<EXPORT_TYPE></EXPORT_TYPE>
<EXPORT_FORMAT></EXPORT_FORMAT>
<EXPORT_COLUMNS>
<COLUMN></COLUMN>
<COLUMN></COLUMN>
<COLUMN></COLUMN>
<COLUMN></COLUMN>
</EXPORT_COLUMNS>
</ExportList>
</Body>
</Envelope>
這裏是我的C#代碼:
ListTableExportFormat exportFormat = ListTableExportFormat.CSV;
ExportType exportType = ExportType.ALL;
var reportResponse = client.ExportList(
new SilverpopServiceReference.sessionheadertype { sessionid = session.SESSIONID },
new SilverpopServiceReference.ExportListRequestType
{
LIST_ID = listID,
EXPORT_TYPE = exportType,
EXPORT_FORMAT = exportFormat,
<WON'T ALLOW TO ADD COLUMN TAGS HERE AS IT DOESN'T RECOGNISE THEM>
});
我得到的錯誤是: SilverpopServiceReference.ExportListRequestType'不包含'COLUMN'的定義
感謝您的建議邁克,沒有工作不幸。如果我編輯了SilverpopReference.cs文件並在其中添加了額外的字段,那該怎麼辦? (我嘗試過,運氣不錯,但也許我錯過了什麼?)。 – stats101
沒有工作。我收到一個錯誤,提示「架構驗證處理失敗」 – stats101
當您嘗試我的建議時,您得到的錯誤是什麼?談到SOAP Web服務時,wsdl是法律。您引用的wsdl並不表示ExportListRequestType具有COLUMNS成員。如果您有其他一些說明ExportListRequestType具有COLUMNS成員的文檔,那麼文檔是錯誤的,或者您有錯誤的wsdl。使用這個wsdl,你無法做到這一點。 –