Silverlight OpenRIA - 重复请求

时间:2015-11-02 13:16:13

标签: c# wcf silverlight iis wcf-ria-services

我正在使用Silverlight 5,.NET 4.5.1和OpenRIA。

Silverlight客户端调用长期OpenRIA操作。该操作是异步的。从客户端我可以看到代码中的函数只被调用一次。另一方面,从IIS服务器端,多次调用WCF函数。

我通过Fiddler记录的内容 - 操作已完成,但出现错误。它被调用了一次,但是有一条消息“注意:在接收操作失败后重试了这个请求。”

请求:

    GET http://localhost:11213/ClientBin/KEEP-Web-Services-PayrollListService.svc/binary/GetPayrollList?payrollListId=efb1df5d-993a-4c4b-9fe6-013561547632 HTTP/1.1
    Accept: */*
    Referer: http://localhost:11213/ClientBin/KEEP.xap
    Accept-Language: pl
    Accept-Encoding: gzip, deflate
    User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko
    Host: localhost:11213
    DNT: 1
    Connection: Keep-Alive
    Cookie: .KEEP_ASPXAUTH_iPersonel=8673CF25C5650AE86CE77A22B9C9A9D20E7588A077E5EADFFE8F5090F08B48639C9F309B1720BC4AD0D4DE342F149D52234DD8C5F15C0B0CCAD5A074C91E8F14B74FC27D7740A91614DECE034A9F99186375ACEB887E610B32CEA5786BF5EA02D35F144BC49D1E4C254478385EEB4D7E8811959E5494D9D6E9F17D698FCBDC93

响应:

HTTP/1.1 504 Fiddler - Receive Failure
Date: Wed, 28 Oct 2015 13:06:41 GMT
Content-Type: text/html; charset=UTF-8
Connection: close
Cache-Control: no-cache, must-revalidate
Timestamp: 14:06:41.238

[Fiddler] ReadResponse() failed: The server did not return a complete response for this request. Server returned 0 bytes.                                                                                                                                                                                                                                                                                                                                                                                                       

IISExpres和IIS 7.5中本地和远程都会出现这种情况。

更新1。

我找到导致重复操作的原因。

  

无法分配134217728字节的托管内存缓冲区。该   可用内存量可能很低。

使用OpenRIA(以前的wcf-ria-services)可以做些什么来处理它?我看不到自定义绑定对OpenRIA有任何影响。

1 个答案:

答案 0 :(得分:1)

问题是32位的IIS。使用64位版本解决了这个问题。

P.S。 Visual Studio可以选择在64位中使用IIS-Express。您还可以添加到注册表:

reg add HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\12.0\WebProjects /v Use64BitIISExpress /t REG_DWORD /d 1

12.0 - Visual Studio 2013