Stackoverflow绝对是最快的论坛,所以在WCF论坛发帖后,我决定来这里。
我有一个wcf服务,它返回一个字典(IDictionary),并且工作得很好。现在我想添加在异步模式下调用该服务的功能,但是当BeginMethod被执行时,我得到以下异常:
类型 System.Collections.Generic.Dictionary`2 [System.String, mscorlib,版本= 2.0.0.0, 文化=中性, 公钥= b77a5c561934e089],[TransferProp, 合同,版本= 10.1.0.0, 文化=中性, PublicKeyToken = 6f5bf81c27b6b8aa]]是 不支持,因为它实现 IDictionary的。
这是怎么回事?
答案 0 :(得分:0)
This (CodeIdol) blog讨论了如何派生自己的CollectionDataContract集合并将其返回。这有帮助吗?
[CollectionDataContract]
public class MyDictionary : Dictionary<int,Contact>
{}
[ServiceContract]
interface IContactManager
{
...
[OperationContract]
MyDictionary GetContacts( );
}