zoukankan      html  css  js  c++  java
  • Linq to sql(十):分层构架的例子(三)

    WCF服务端与客户端

           打开Host项目中的Program.cs,使用下面的代码来实现WCF的服务端:

    using System;

    using System.Collections.Generic;

    using System.Linq;

    using System.Text;

    using System.ServiceModel;

    using Service;

    using Contract;

     

    namespace Host

    {

        class Program

        {

            static void Main(string[] args)

            {

               

                Uri uri = new Uri("net.tcp://localhost:8080/DataAccessService");

                using (ServiceHost sh = new ServiceHost(typeof(DataAccess), uri))

                {

                    NetTcpBinding ctb = new NetTcpBinding();

                    sh.AddServiceEndpoint(typeof(IDataAccess), ctb, string.Empty);

                    sh.Opened += delegate { Console.WriteLine("服务已经启动"); };

                    sh.Open();

                    Console.ReadLine();

                }

            }

        }

    }

           WebSite项目中的App_Code文件夹下创建一个用户调用服务的类,GetService.cs

    using System;

    using System.Data;

    using System.Configuration;

    using System.Linq;

    using System.Web;

    using System.Web.Security;

    using System.Web.UI;

    using System.Web.UI.WebControls;

    using System.Web.UI.WebControls.WebParts;

    using System.Web.UI.HtmlControls;

    using System.Xml.Linq;

    using Contract;

    using System.ServiceModel.Description;

    using System.ServiceModel;

     

    public class GetService

    {

        public static IDataAccess GetDataAccessService()

        {

            ServiceEndpoint sep = new ServiceEndpoint(ContractDescription.GetContract(typeof(IDataAccess)),

                new NetTcpBinding(),

                new EndpointAddress("net.tcp://localhost:8080/DataAccessService"));

     

            ChannelFactory<IDataAccess> cf = new ChannelFactory<IDataAccess>(sep);

     

            return cf.CreateChannel();

        }

    }

  • 相关阅读:
    Mac 下安装Ant
    MAMP 10.10下启动报错解决方案
    [转]常用iOS图片处理方法
    Mac下Android SDK更新不了的解决办法
    细说23+1种设计模式
    mysql应该了解的知识点
    java快排思想
    简介一下 i++和++i&&i=i+i,i+=1;的区别
    对int类型的数据,如何让获取长度
    第一次写博客
  • 原文地址:https://www.cnblogs.com/kevin2013/p/1748998.html
Copyright © 2011-2022 走看看