/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>