public IList getModelList(string type, string SQL, List<string> list)
{
try
{
IList Mlist = new List<object>();
IDataReader dr = getDataReader(SQL, list);
while (dr.Read())
{
object obj = this.GetType().GetMethods().First((p) => p.IsGenericMethod && p.Name == "LoadFromReader").MakeGenericMethod(Helper.types[type]).Invoke(this, new object[] { dr });
Mlist.Add(obj);
}
return Mlist;
}
catch (Exception ex)
{
return null;
}
}

[OperationContract]
[ServiceKnownType("GetKnownTypes"typeof(Helper))]
IList getModelList(string type, string SQL, List<string> list);
 
 

public static class Helper
{
public static Dictionary<string, Type> types = Assembly.LoadFrom(AppDomain.CurrentDomain.BaseDirectory + "XXX.Model.dll").GetTypes().ToDictionary(t => t.Name);

public static IEnumerable<Type> GetKnownTypes(ICustomAttributeProvider provider)
{
return types.Select(t=>t.Value);
}
}

WCF使用泛型方法的问题的更多相关文章

  1. [WCF编程]10.操作:回调操作

    一.回调操作概述 WCF支持服务将调用返回给它的客户端.在回调期间,许多方面都将颠倒过来:服务将成为客户端,客户端将编程服务.回调操作可以用在各种场景和应用程序中,但在涉及事件或者服务发生时间需要通知 ...

  2. WCF分布式开发步步为赢(10):请求应答(Request-Reply)、单向操作(One-Way)、回调操作(Call Back).

    WCF除了支持经典的请求应答(Request-Reply)模式外,还提供了什么操作调用模式,他们有什么不同以及我们如何在开发中使用这些操作调用模式.今天本节文章里会详细介绍.WCF分布式开发步步为赢( ...

  3. WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇]

    原文:WCF技术剖析之二十二: 深入剖析WCF底层异常处理框架实现原理[中篇] 在[上篇]中,我们分别站在消息交换和编程的角度介绍了SOAP Fault和FaultException异常.在服务执行过 ...

  4. 《WCF技术剖析》博文系列汇总[持续更新中]

    原文:<WCF技术剖析>博文系列汇总[持续更新中] 近半年以来,一直忙于我的第一本WCF专著<WCF技术剖析(卷1)>的写作,一直无暇管理自己的Blog.在<WCF技术剖 ...

  5. WCF服务编程 读书笔记——第1章 WCF基础(2)

    续:第1章 WCF基础(1) 元数据交换 服务有两种方案可以发布自己的元数据.一种是基于HTTP-GET协议提供元数据, 另一种则是后面将要讨论的使用专门的终结点的方式.WCF能够为服务自动提供基于H ...

  6. WCF学习之旅—第三个示例之四(三十)

           上接WCF学习之旅—第三个示例之一(二十七)               WCF学习之旅—第三个示例之二(二十八)              WCF学习之旅—第三个示例之三(二十九)   ...

  7. 【WCF】使用“用户名/密码”验证的合理方法

    我不敢说俺的方法是最佳方案,反正这世界上很多东西都是变动的,正像老子所说的——“反(返)者,道之动”.以往看到有些文章中说,为每个客户端安装证书嫌麻烦,就直接采用把用户名和密码塞在SOAP头中发送,然 ...

  8. 【WCF】错误协定声明

    在上一篇烂文中,老周给大伙伴们介绍了 IErrorHandler 接口的使用,今天,老周补充一个错误处理的知识点——错误协定. 错误协定与IErrorHandler接口不同,大伙伴们应该记得,上回我们 ...

  9. 【WCF】自定义错误处理(IErrorHandler接口的用法)

    当被调用的服务操作发生异常时,可以直接把异常的原始内容传回给客户端.在WCF中,服务器传回客户端的异常,通常会使用 FaultException,该异常由这么几个东东组成: 1.Action:在服务调 ...

随机推荐

  1. solr多核配置

    假设已经配置好了一个单core的solr服务器. solr.xml配置文件 单核和多核主要在solr.xml配置不同.在solr/example中已经有一个名称为multicore的文件夹里面给我们配 ...

  2. JavaMelody应用监控使用指南

    原文链接:http://www.cnblogs.com/xing901022/p/4116430.html 前言 本文参考JavaMelody的UserGuide编写,部分文字均来自文档,添加有个人理 ...

  3. win8 IIS

    IIS打开页面报500错误 aspnet_regiis.exe -i 报 “此操作系统版本不支持此选项” 决解方法: 控制面板 - 程序和功能 - 启动或关闭windows功能 - Internet ...

  4. 让VS2010/VS2012添加新类时自动添加public关键字

    在VS添加类别的时候,每次都需要添加public关键字,表示好麻烦. 但是可以避免这个麻烦的. 通过修改VS2010的ItemTemplate,可以避免这个麻烦. 修改方法如下: 1. 打开文件夹Mi ...

  5. 使用NSKeyedArchiver归档

    将各种类型的对象存储到文件中,而不仅仅是字符串.数组和字典类型,有一种更灵活的方法.就是利用NSKeyedAarchiver类创建带键(keyed)的档案来完成. Mac OS X从版本10.2开始支 ...

  6. 30分钟入门Java8之方法引用

    30分钟入门Java8之方法引用 前言 之前两篇文章分别介绍了Java8的lambda表达式和默认方法和静态接口方法.今天我们继续学习Java8的新语言特性--方法引用(Method Referenc ...

  7. 批量修改Project视图中Prefab的名字

    简要代码如下: using UnityEditor; using UnityEngine; using System.IO; using System.Collections; using Syste ...

  8. Linux的一些命令

    程序 # rpm -qa                # 查看所有安装的软件包 系统 # uname -a               # 查看内核/操作系统/CPU信息 # head -n 1 / ...

  9. 为sourceinsight添加makefile、kconfig、*.S文件支持

    转载:http://www.cnblogs.com/myblesh/articles/2452030.html   大家用source insight看linux源码的时候都遇到这么一个麻烦,make ...

  10. vs2010安装和使用

    vs2010是之前我跟老师做网站项目时安装的,这次软件工程作业我就用它了,安装过程中的截图就不存在了,我就详细说说它的使用吧. VS2010软件挺大的,下载大概要一个多小时,安装过程大概都是下一步. ...