2013-03-18 12 views
0

我正在使用RestSharp構建對我的MVC入口點的Rest訪問(實際上我可以使用它們從monotouch,但現在我正在測試Windows 7,vs2010,.net 4,RestSharp 104.1)RESTSharp在ExecuteAsyncPost與ExecutePost上的空實體

如果我創建了一個請求,並調用

client.ExecuteAsPost<Model.Client>(request); 

它的作品,我可以在小提琴手看到原始數據包

POST http://localhost.:49165/Services/Client/ClientAdminService/FindClient HTTP/1.1 
Timestamp: Monday, March 18, 2013 1:56:02 AM 
X-PS-Authentication: YADAYADA:<deleted for brevity>== 
Accept: application/xml 
User-Agent: RestSharp 104.1.0.0 
Content-Type: application/xml; charset=utf-8 
Host: localhost.:49165 
Content-Length: 256 
Accept-Encoding: gzip, deflate 
Connection: Keep-Alive 


<Client xmlns="http://schemas.datacontract.org/2004/07/PSRMWebService.Model.Version1" xmlns:i="http://www.w3.org/2001/XMLSchema-instance"><ID>0</ID><MailingAddress i:nil="true"/><Mask>Name</Mask><Name>Rykercom</Name><PhysicalAddress i:nil="true"/></Client> 

,你可以在最後看到的是連載d數據blob我需要發送到服務器(類型Model.Client的),這是添加到使用

Request.AddParameter("application/xml; charset=utf-8", DataPacket, RestSharp.ParameterType.RequestBody); 

的請求,其中DataPacket是使用的DataContractSerializer

創建的序列化的斑點現在,如果我改變代碼調用

Client.ExecuteAsyncPost<Model.Client>(Request, (response, handle) => { OnFindClientAsyncComplete(response, handle, Callback); }, "POST"); 

使用招我得到完全不同的包,沒有身體,沒有內容類型,因此來自服務器的失敗響應。

POST http://localhost.:49165/Services/Client/ClientAdminService/FindClient HTTP/1.1 
Timestamp: Monday, March 18, 2013 2:35:08 AM 
X-PS-Authentication: YADAYADA:<deleted for bevity>== 
Accept: application/xml 
User-Agent: RestSharp 104.1.0.0 
Host: localhost.:49165 
Content-Length: 0 
Accept-Encoding: gzip, deflate 
Connection: Keep-Alive 

X-PS認證只是一個自定義認證字符串。任何人有任何想法,爲什麼異步調用留給我一個空的郵件正文?

回答

0

簡單的答案是克隆當前github存儲庫以保持清醒並自行構建它。看來,executeasync的修復程序已經在樹中。

任何擁有Nuget包的機會都可以將其更新爲最新來源?

謝謝