We have our project (it may be Windows or a web application or something else) and we want to host one WCF service within this solution locally. This type of hosting is called Self-Hosting. To implement self-hosting we need to include System.Service.Model.ServiceHost namespace.
The following are the advantages of self-hosting:
Is easy to use: With only a few lines of code you have your service running.
Is flexible: You can easily control the lifetime of your services through the Open() and Close() methods of ServiceHost<T>.
Is easy to debug: Debugging WCF services that are hosted in a self-hosted environment provides a familiar way of debugging, without having to attach to separate applications that activate your service.
Is easy to deploy: In general, deploying simple Windows applications is as easy as xcopy. You don't need any complex deployment scenarios on server farms, and the like, to deploy a simple Windows application that serves as a WCF ServiceHost.
Supports all bindings and transports: Self-hosting doesn't limit you to out-of-the-box bindings and transports whatsoever. On Windows XP and Windows Server 2003, IIS limits you to HTTP only.
The following are the disadvantages of self-hosting:
Limited availability: The service is reachable only when the application is running.
Limited features: Self-hosted applications have limited support for high availability, easy manageability, robustness, recoverability, versioning, and deployment scenarios. At least, out-of-the-box WCF doesn't provide these, so in a self-hosted scenario you have to implement these features yourself; IIS, for example, comes with several of these features by default.
Posted Date:- 2021-09-20 08:45:47
What is used to create an n-tire application?
What is needed to hold an error/exception?
What is the set of techniques in WFC?
What is used to design the application of the network? Define
State the contract that is used to rectify errors in WCF
In WCF what are the various isolation levels which are given?
What is the full form of REST?
State the types of binding that WCF encompasses.
Which is the namespace used to access WCF?
Mention the three types of transaction managers that WCF contains.
What is the usage of "maxConcurrentCalls" in Throttling?
What are the different types of transaction managers supported by WCF?
What is Callback mode in WCF? Explain.
What is the one-way mode in WCF? Explain.
Which styles of models are supported in WCF?
What is the usage of "receiveTimeout" property in WCF?
What is Exception Handling in WCF? What are the ways for WCF Exception Handling?
What is REST and how to create a WCF RESTful Service ?
What is Transport Reliability in WCF?
What is the transport and message reliability?
How can you test a WCF application without creating a client application?
What is Concurrency Management in WCF?
How many types of binding are there in WCF?
What is the request-reply mode in WCF?
What are the different modes of communication in WCF?
How would you generate a proxy for WCF?
What is Instance Management in WCF?
What is Transaction Propagation? And how WCF support it?
What is REST and what is the problem with WCF REST and how it can be resolved?
Give the address format of all the bindings in WCF.
Which are the different isolation levels in WCF?
What is the difference between ASMX web services and WCF?
What are the hosting requirements for a web service?
What are the three types of transaction manager WCF supports?