好的,情况是我们有一个类 PatientDto
,以及一个由 CaSTLe PatientDtoProxy
生成的 DynamicProxy。
我们在 Silverlight 客户端中使用此代理,然后希望通过 WCF 服务调用将其发送回服务器。
WCF 服务契约需要一个 PatientDto
(即不是代理),并且正如预期的那样,如果您尝试发送任何其他内容,它就会崩溃。
从本质上讲,我们觉得我们应该将它“转换”回 PatientDto
以使事情正常工作......但实际上,即使您将引用向下转换为 PatientDto,它也不会不改变任何东西——WCF 仍然将内存中的对象视为 PatientDtoProxy
并崩溃。
显然,对新的 PatientDto
进行深度复制是一种选择(并且确实有效),但却是一种令人不快的选择。我们只是没有想到的任何技术?
最佳答案
如何使用 AutoMapper 并将您的代理映射到真实的 PatientDto 对象。或者自己手动映射。
关于c# - 如何将 DynamicProxy "really"向下转换回其原始类型(通过 WCF 发送),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3416306/