ASP.Net Web服务接收到数量未定义的键值对

本文关键字:未定义 键值对 Net Web 服务 ASP | 更新日期: 2023-09-27 18:20:10

我一直在与一些表单处理提供商合作,他们似乎有一个用于键值对数据的通用接收器。我正在尝试这样做,但我尝试使用的每个数据结构都实现了一个接口,因此无法序列化容器以在web方法中使用。

我甚至尝试过使用基本的"对象"数据类型,但没有成功

[WebMethod] 
        public void processResponse( object lead ){
            Dictionary<string, string> DList = (Dictionary<string,string>) lead;

如何使用此Web服务接收未定义数量的键值对,以便对接收到的数据执行业务逻辑,并使用统一的输入方法智能地路由数据?静态类型的类在此实例中不起作用,因为不同类型的潜在客户具有不同数量的字段/属性。

ASP.Net Web服务接收到数量未定义的键值对

切换到WCF,默认情况下,WCF使用能够序列化键值对(如Dictionary<T,K>)的DataContractSerializer类。

您的服务的基本结构将完全相同,并且使用BasicHttpBinding,您拥有几乎相同的基于Http和Soap的通信协议。花30分钟在WCF教程上,你几乎不想回到旧的*.asmxs.

我最终做的是添加一个通用处理程序。我将QueryString参数复制到Dictionary中,并使用其中的值。它设置了数据收集的中心点,我能够从那里应用我的业务逻辑——似乎符合我想要的目的。