您的位置:首页 > 其它

WCF RIA 问题. 编译时 CreateRiaClientFilesTask 失败

2011-11-25 10:31 465 查看
The"CreateRiaClientFilesTask" task failed unexpectedly

System.IO.FileLoadException:Loading this assembly would produce a different grant set from other instances.(Exception from HRESULT: 0x80131401)

这是WCF RIA中的一个BUG,常见于在服务器端使用了泛型类

原因:

The problem willoccur when marshaling an object by value between two appdomains in the sameprocess wherethetype of the instance is generic, the generic template type isdefined in mscorlib, one or more of its instantiating types is not defined
inmscorlib and multi-domain loader optimization has been enabled in one domainbut not the other.

Unfortunately thisbug was discovered too late and didn't make the bar for the V2.0 product. Thereare some workarounds however:This bug is specific to an optimized version ofthe in-process, cross-appdomain remoting channel。

http://connect.microsoft.com/VisualStudio/feedback/details/95157/loaderoptimization-multidomain-incompatible-with-generics

解决方式:

方式1.修改注册表:

HKEY_CURRENT_USER\Software\Microsoft\.NETFramework\UseNewCrossDomainRemotingregistry value (a DWORD) to 0 (or the version in HKEY_LOCAL_MACHINE)

方式2.在WCFRIA服务器端Project设置:

set complus_UseNewCrossDomainRemoting=0

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐