我想调用一个ASP.NET Web API,它是从MonoDroid在IIS中托管的。服务很好,我可以从不同的端点调用它。问题是在MonoDroid中,当我尝试执行此操作时,我得到无效的强制转换异常。ASP.NET Web API和MonoDroid
var s = response.GetResponseStream();
var j = (JsonObject)JsonObject.Load(s);
System.InvalidCastException:返回加载部分。
我已经做了一些阅读,人们似乎说要尝试切换Web API以使用JsonNetFormatter类。我尝试过,仍然没有运气。
任何人有什么想法我可以尝试?
UPDATE这里是有效载荷
<ArrayOfAlbum xmlns:xsi="w3.org/2001/XMLSchema-instance";
xmlns:xsd="w3.org/2001/XMLSchema">;
<Album>
<AlbumPK>f09d14cf-3bab-44c8-b614-2b7cf728efd4</AlbumPK>
<Name>Colorado</Name>
<UserName>firstUser</UserName>
<ParentAlbumFK xsi:nil="true" />
<DateCreated>2012-03-12T19:47:54.493</DateCreated>
</Album>
</ArrayOfAlbum>
而
从提琴手改变接受头JSON[{"AlbumPK":"f09d14cf-3bab-44c8-b614-2b7cf728efd4","Name":"Colorado",
"UserName":"emorin","ParentAlbumFK":null,
"DateCreated":"2012-03-12T19:47:54.493"}]
响应。
HTTP/1.1 200 OK
Cache-Control: no-cache
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json; charset=utf-8
Expires: -1
Server: Microsoft-IIS/7.0
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 17 Apr 2012 19:45:47 GMT
97
[{ "AlbumPK":"f09d14cf-3bab-44c8-614-2b7cf728efd4","Name":"Colorado",
"UserName":"emorin","ParentAlbumFK":null,
"DateCreated":"2012-03-12T19:47:54.493"}]
0
尝试从浏览器/ fiddler/...调用服务并获取JSON并将其发布到此处。如果没有首先查看JSON,请不要更改您的服务中的任何内容。 – Aliostad 2012-04-17 08:37:59
更多来自Fiddler.HTTP/1.1 200 OK Cache-Control:no-cache Pragma:no-cache Content-Type:application/json;字符集= UTF-8 到期日:-1 服务器:Microsoft-IIS/7.0 X-ASPNET-版本:4.0.30319 X供电,通过:ASP.NET 日期:星期二,2012年4月17日16点20: 56 GMT Content-Length:151 [{“AlbumPK”:“f09d14cf-3bab-44c8-b614-2b7cf728efd4”,“Name”:“Colorado”,“UserName”:“emorin”,“ParentAlbumFK”:null, “DateCreated”:“2012-03-12T19:47:54.493”}] – Ernie 2012-04-17 16:23:06
那么第一个XML是什么?哪一个是正确的?请更新问题,不要使用评论。 – Aliostad 2012-04-17 16:27:30