Mat*_*mbs 6 .net silverlight wcf
我正在使用一些泛型类作为数据容器,并使用它们来传递数据到wcf服务和从wcf服务传递数据.由于WCF将客户端的通用名称变为名为"ListOfBlah231546797646"的类,我将实际程序集的引用添加为"KnownType".
Silverlight需要使用这些服务,但只能引用"silverlight程序集".我已经将类移动到他们自己的"silverlight程序集"并且可以从silverlight引用它们,但是当服务运行时,我在System.Runtime.Serialization程序集上得到"找不到引用的程序集"错误.
事实证明,Silverlight拥有自己的二进制文件集,所有二进制文件都标记为版本2.0.5.0.这些不在服务的GAC中,因此抛出异常.
因此,我不能从我的服务代码中引用我的"Silverlight程序集".有什么方法可以解决这个问题,使两种口味在序列化时交叉兼容吗?
这个问题很相似,但没有一个答案有帮助.有任何想法吗? 类似的问题
我在 Silverlight 和普通 CLR 之间共享代码的方式是对 C# 项目使用“添加为链接”功能。所以它最终看起来像这样:
| SilverlightLib
| File1.cs
| File2.cs
| ClrLib
| File1.cs <as link>
| File2.cs <as link>
Run Code Online (Sandbox Code Playgroud)
然后VS就可以正常工作了,两组代码都被编译了。令人烦恼的部分是 Silverlight 框架不一致的地方。(WCF 的某些部分在 SL 中不存在。)在这种情况下,您需要使用预处理器“#if SILVERLIGHT”以使代码面向两个平台。
到目前为止,这种方法效果很好。这样,我可以编写代码,使用 VSTS 进行测试,但仍然可以在同一来源的 SL 上运行。一些提示:
| 归档时间: |
|
| 查看次数: |
448 次 |
| 最近记录: |