1. 程式人生 > >基於Windows服務的WCF

基於Windows服務的WCF

ora 基於 int get poi service() ont host tables

(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();

基於Windows服務的WCF