基于Windows服务的WCF

(1)创建WCF

代码示例:

[ServiceContract]

public interface ILimsDBService

{

[OperationContract]

int ExecuteSql(string strSql);

[OperationContract]

DataTable GetDataTable(string strSql);

[OperationContract]

DataSet GetDataSet(string strSql);

}

public class LimsDBService : ILimsDBService

{

public int ExecuteSql(string strSql)

{

OracleDBHelper dbo = new OracleDBHelper(ConfigInfo.LimsDbConnStr);

return dbo.ExecuteSql(strSql);

}

public DataTable GetDataTable(string strSql)

{

OracleDBHelper dbo = new OracleDBHelper(ConfigInfo.LimsDbConnStr);

return dbo.GetDataTable(strSql);

}

public DataSet GetDataSet(string strSql)

{

OracleDBHelper dbo = new OracleDBHelper(ConfigInfo.LimsDbConnStr);

return dbo.GetDataSet(strSql);

}

}

(2)创建Windows服务

代码示例:

public partial class LimsHsSysService : ServiceBase

{

ServiceHost LimsDBServiceHost = new ServiceHost(typeof(LimsDBService));

public LimsHsSysService()

{

InitializeComponent();

}

protected override void OnStart(string[] args)

{

LimsDBServiceHost.Open();

}

protected override void OnStop()

{

LimsDBServiceHost.Close();

}

}

(3)配置客户端

功能代码:

WSHttpBinding binding = new WSHttpBinding();

EndpointAddress address = new EndpointAddress("http://192.168.4.179:8732/Design_Time_Addresses/WcfLimsServer/LimsDBService/");

LimsDBServiceClient lims = new LimsDBService.LimsDBServiceClient(binding, address);

string sql = "select sample_id,material_type from nais_all_samples where sample_id=" + this.txtQuery.Text.Trim();

DataTable dt = lims.GetDataSet(sql).Tables[0];

this.gvData.DataSource = dt;

this.gvData.DataBind();

时间: 2024-10-31 19:01:35

基于Windows服务的WCF的相关文章

Windows服务承载WCF

Source文件 ------------------------- 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 using System.ComponentModel; 7 using System.ServiceModel; 8 using System.ServiceProcess; 9 using System.Configuration

Topshelf + Quartz2.5 创建基于windows服务

1.创建一个定时调度Quartz类 1 using Quartz; 2 using Quartz.Impl; 3 using System; 4 using System.Collections.Generic; 5 using System.Linq; 6 using System.Text; 7 using System.Threading.Tasks; 8 using Topshelf; 9 10 11 namespace TopShelfSolution 12 { 13 14 publi

使用Topshelf 5步创建Windows 服务 z

使用Topshelf创建Windows 服务简要的介绍了创建Windows服务的另一种方法,老外的一篇文章Create a .NET Windows Service in 5 steps with Topshelf通过5个步骤详细的介绍使用使用Topshelf创建Windows 服务.Topshelf是一个开源的跨平台的宿主服务框架,支持Windows和Mono,只需要几行代码就可以构建一个很方便使用的服务宿主. 1.Topshelf的代码托管在http://topshelf-project.c

Quartz.NET Windows 服务示例

想必大家在项目中处理简单的后台持续任务或者定时触发任务的时候均使用 Thread 或者 Task 来完成,但是项目中的这种需求一旦多了的话就得将任务调度引入进来了,那今天就简单的介绍一下 Quartz.NET 基于 Windows 服务宿主是怎样配置使用的. Quartz.NET 是一个优秀的任务调度框架,移植于 Java 版的 Quartz . 官网:http://www.quartz-scheduler.net Github:https://github.com/quartznet/quar

ASP.NET Core使用TopShelf部署Windows服务

asp.net core很大的方便了跨平台的开发者,linux的开发者可以使用apache和nginx来做反向代理,windows上可以用IIS进行反向代理. 反向代理可以提供很多特性,固然很好.但是还有复杂性,我们也可以使用windows service来直接启动kestrel. asp.net core官方网站提供了一种基于windows服务部署的方法:在 Windows 服务中托管 ASP.NET Core 这种方式需要修改代码,然后部署的时候,使用命令行创建.安装服务,然后再启动. 感觉

基于Win服务的标签打印(模板套打)

最近做了几个项目,都有在产品贴标的需求 基本就是有个证卡类打印机,然后把产品的信息打印在标签上. 然后通过机器人把标签贴到产品上面 标签信息包括文本,二维码,条形码之类的,要根据对应的数据生成二维码,条形码. 打印标签的需求接到手后,开始了我的填坑之旅. 打印3.0源代码:https://github.com/zeqp/ZEQP.Print 打印1.0 第一个项目开始,因为原来没有研究过打印,所以在Bing上查了一下.Net打印机关的资料 发现基本上都是基于.net的System.Drawing

IIS 中托管基于TCP绑定的WCF服务

IIS 中托管基于TCP绑定的WCF服务 一.创建一个基于TCP绑定的WCF服务 1.创建一个的简单的服务具体代码如下 服务契约定义 namespace SimpleService { // 注意: 使用“重构”菜单上的“重命名”命令,可以同时更改代码和配置文件中的接口名“IHelloService”. [ServiceContract] public interface IHelloService { [OperationContract] string GetMessage(string m

微软 WCF的几种寄宿方式,寄宿IIS、寄宿winform、寄宿控制台、寄宿Windows服务

WCF寄宿方式是一种非常灵活的操作,可以在IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为调用者方便.高效提供服务调用.本文分别对这几种方式进行详细介绍并开发例子进行说明,以求大家对WCF寄宿的方式进行全面的认识和了解. 1. WCF服务的IIS服务寄宿 我在我前面几篇WCF开发框架的介绍文章中,介绍过了WCF常用的一种寄宿方式,IIS服务寄宿.这种寄宿方式是最为方便的方式,而且由于服务只需要IIS运行就能自动运行起来,因此广为使用. 创建这

重温WCF之构建一个简单的WCF(一)(2)通过Windows Service寄宿服务和WCF中实现操作重载

参考地址:http://www.cnblogs.com/zhili/p/4039111.html 一.如何在Windows Services中寄宿WCF服务 第一步:创建Windows 服务项目,具体添加步骤为右键解决方案->添加->新建项目,在已安装模板中选择Windows 服务模板,具体如下图示所示: 第二步:添加Windows服务之后,修改对应的Service1.cs文件 using System; using System.Collections.Generic; using Syst