在异步模式下调用服务时出错

时间:2009-03-31 16:40:21

标签: wcf idictionary asynchronous-wcf-call

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的。

这是怎么回事?

1 个答案:

答案 0 :(得分:0)

This (CodeIdol) blog讨论了如何派生自己的CollectionDataContract集合并将其返回。这有帮助吗?

[CollectionDataContract]
public class MyDictionary : Dictionary<int,Contact>
{}

[ServiceContract]
interface IContactManager
{
   ...
   [OperationContract]
   MyDictionary GetContacts( );
}