wcf小实例

/////////////////////////host

using System;

using System.ServiceModel;

using System.Text;



///host 

namespace Host

{

    public class Host :IHost

    {

        #region IHost 成员



        public string Hello()

        {

            return string.Format("Hello Access Date:'{0}'", DateTime.Now);

        }



        #endregion

    }

    [ServiceContract]

    public interface IHost

    {

        [OperationContract]

        string Hello();

    }

}





///////////////////////////////end host



///////////////////////////service wcf

using System;

using System.ServiceModel;

using System.ServiceModel.Channels;

using System.Text;

using Host;



namespace ServiceWCF

{

    class Program

    {

        static void Main(string[] args)

        {

            using (ServiceHost host = new ServiceHost(typeof(Host.Host)))

            {

                host.AddServiceEndpoint(typeof(IHost), new NetTcpBinding(), "net.tcp://locahost:9000/Hello");

                host.Open();

                Console.WriteLine("service start aucceed!");

                Console.ReadKey();

            }

           

        }

    }

}

////////////////////////////////end service wcf//////////////////////



/////////////////////client wcf

using System;

using System.ServiceModel;

using System.ServiceModel.Channels;

using System.Text;



namespace ClientWCF

{

    class Program

    {

        static void Main(string[] args)

        {

            IHost proxy = ChannelFactory<IHost>.CreateChannel(new NetTcpBinding(), new EndpointAddress("net.tcp://200.1.3.27:9000/Hello"));

            string acc = proxy.Hello();

            Console.WriteLine(acc);

            Console.ReadKey();

        }

    }

    [ServiceContract]

    public interface IHost

    {

        [OperationContract]

        string Hello();

    }

}

////////////////////////////end client wcf







//////////服务端app.config配置文件,,,实现http功能

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

  <system.serviceModel>

    <services>

      <!--            namespace.class                             -->

      <service name ="Host.Host"  behaviorConfiguration ="CalculatorServiceBehavior">

        <!--                                           class.method                             -->

        <endpoint binding="basicHttpBinding" contract="Host.IHost" address="Hello"/>

        <endpoint binding="mexHttpBinding" contract="IMetadataExchange" address="mex" />

        <host>

          <baseAddresses>

            <add baseAddress="http://localhost:9100"/>

          </baseAddresses>

        </host>

      </service>

    </services>



    <!--定义CalculatorServiceBehavior的行为-->

    <behaviors>

      <serviceBehaviors>

        <behavior name="CalculatorServiceBehavior">

          <serviceMetadata httpGetEnabled="true"/>

          <serviceDebug includeExceptionDetailInFaults="false"/>



        </behavior>



      </serviceBehaviors>



    </behaviors>

  </system.serviceModel>

</configuration>

你可能感兴趣的:(WCF)