Skip to main content

Creating a Custom Service Host

Creating custom service host enables you to change a service's run-time behavior.

1.  Download and open the WCF application here.

2. In the service host project add a class called NewProdSrvHost.

3. This public class inherits from ServiceHost class.

4. Add a default constructor calls the base(typeof(ProductService))

5. Override OnOpening() method to add a new endpoint as shown below:

  base.OnOpening();
  this.AddServiceEndpoint(typeof(IProductService), new BasicHttpBinding(), "newservice");


6. To always enable metadata even if the user turns it off:

protected override void OnOpening()
{
  base.OnOpening();
  this.AddServiceEndpoint(typeof(IProductService), new BasicHttpBinding(), "newservice");

  ServiceMetadataBehavior mdb = this.Description.Behaviors.Find<ServiceMetadataBehavior>();
   if (mdb != null)
   {
      mdb.HttpGetEnabled = true;
   }
   else
   {
      mdb = new ServiceMetadataBehavior();
      mdb.HttpGetEnabled = true;
      this.Description.Behaviors.Add(mdb);
   }

}        

Always metadata enable with one endpoint.

7. In the main method of the host instance, do the following changes to the host.

NewProdSrvHost host = new NewProdSrvHost();

8. Go to App.config file of the ConsoleHost project, locate and remove the following line of code:

<serviceMetadata httpGetEnabled="true"/>

9. Set the ConsoleHost as the startup project and Run it. Notice that a new endpoint with the relative address "newservice" is active.

10. Open a browser and navigate to the metadata address of the service. Note new endpoint and the metadata is enabled in the overridden OnOpening() method.



Links

Custom Service Host - https://msdn.microsoft.com/en-us/library/aa395224(v=vs.110).aspx








Comments

Popular posts from this blog

CUMIPMT and CUMPRINC function

CUMIPMT Cumulative interest payment function allows you to calculate the interest paid for a loan or from an investment from period A to period B. When getting a loan, CUMIPMT function can be used to calculate the total amount of interest paid in the first five months or from period 12 to period 20. A period can be a month, a week or two week. Loan Amount : 350,000.00 APR: 4.5% Down payment: 0.00 Years: 25 Payment per year: 12 From the above data, we can calculate the following: No of Period: 25 × 12 = 300 Periodic Rate: 4.5/12 = 0.375% Here is how you will substitute these values into the function. = CUMIPMT (periodic rate, No of period, vehicle price, start period, end period,  ) = CUMIPMT (0.375, 300, 350000, 1, 5, 0) In an excel worksheet, we use cell address instead of actual values as shown below: Here is the formula view of the worksheet: CUMPRINC Another related function is CUMPRINC. CUMPRINC function is used to calculate cumul

Excel PMT Function

PMT function is very useful for calculating monthly payment required to payback a loan or mortgage at a fixed rate. This function require a minimum of three inputs, periodic rate, number of periods, present value or the loan amount. Here is a simple example. Home Loan: 350,000.00 Interest rate: 4.5% Number of years to repay the loan: 25 Note: To calculate monthly payment, we need to find the monthly rate and number of months as shown above. Then it is simply a matter of substituting the values into the payment function, as shown in the formula view below.

BCG's Brand Advocacy Index

The Boston Consulting Group's (BCG) Brand Advocacy Index (BAI) is a metric developed to help companies measure the degree of customer advocacy for their brands. BAI focuses on the likelihood of customers to recommend a brand to others, which is a powerful indicator of brand strength and customer loyalty. Unlike other customer satisfaction or loyalty metrics, BAI emphasizes the importance of customer referrals and word-of-mouth marketing. BAI is calculated based on a survey where customers are asked about their willingness to recommend a brand to their friends, family, or colleagues. The responses are then used to compute a score, which ranges from -100 to 100. A higher BAI score indicates that a brand has more advocates who are likely to recommend the brand to others, while a lower score suggests that the brand has fewer advocates or even a higher number of detractors. BCG's research has shown that companies with higher BAI scores tend to experience higher growth rates and bett