What is WCF?
Windows Communication Foundation(WCF) is an SDK for developing and deploying services on Windows. WCF provides a runtime environment for your services, enbabling you to expose CLR types as services,and to consume other servives as CLR types. In .NetFrameWork, most all of the WCF functionality is included in a single assembly called System.ServiceModel.dll in the system.servicemodel namespace.
EndPoint:
The Endpoint is the fusion of the address,binding and contract
and in this text, I will say s.th about Address
Address:
In WCF, every service is associated with a unique address, The address provides two important elements:the location of the service and the transport protocal or tranport schema used to communicate with the service. WCF 1.0 supports the following transport schemas:
1)HTTP
2)TCP
3)Peer Network
4)IPC(Inter-Process Communication named pipes)
5)MSMQ
HTTP Address
Http address use http for transport, and can also use https for secure transport. you tipically use http addresses with a speicified port ,such as:
http://localhost:8001
comments: if the port number is unspecified, it defauts to 80.
TCP Address
TCP Address use net.tcp for the transport,and typically include a port number such as:
net.tcp://localhost:8002/myservice
comments:if the port number is unspecified, it defaults to 808.
it is possible for two tcp address(from the same host) to share a port:
net.tcp://localhost:8002/myservice
net.tcp://localhost:8002/myotherservice
IPC Address
IPC Address use net.pipe for transport, to indicate the use of the windows named pipe mechnism. In WCF, services that use named piped can only accept calls from the same machine. consequently, you must specify either the explicit local machine name or localhost,for the machine name, followed by a unique string for the pipe name:
net.pipe://localhost/mypipe
you can only open a named pipe once per machine. and therefore it's impossible for two named pipe addressed to share a pipe name on the same machine.
MSMQ Address
MSMQ Address use net.msmq for tranport, to indicate the use of the MSMQ. you must specify the queue name and queue type.the samples such as:
net.msmq://localhost/private/myservice
net.msmq://localhost/myservice
Peer Network Address
Peer Network addresss use net.p2p for tranport, to indicate the use of the windows peer network tranport.