WCF:Do we have to use the relative addresses when hosting
in the IIS or the absolute addresses? Why?
Answer / jt
IIS Addressing Considerations
When hosting in IIS, you don’t have to worry about creating
or managing the ServiceHost instance. IIS takes care of
this for you behind the scenes. You simply map a .svc
endpoint to your service class, configure the service
endpoints and behaviors in web.config, and let Windows
Communication Foundation manage the process of creating and
configuring the ServiceHost instance at runtime.
In this hosting scenario, the base HTTP address is
determined by the IIS virtual directory housing the service
along with the name of the .svc file. You, as the
developer, really have nothing to say about the base
address since it’s fully controlled by the IIS addressing
scheme.
As a result, Windows Communication Foundation happily
ignores any base addresses you may specify in web.config in
this scenario. If you want to change the base address for
your endpoints, you’ll need to move the service to a
different IIS virtual directory.
Not only does IIS control the base address, it forces all
of your endpoints to actually use the same base address
(unlike self-hosting). This means that if you do specify an
absolute address for a particular endpoint, it must start
with the base address corresponding to the virtual
directory or you’ll get an exception. As a result, it
really only makes sense to use relative addresses when
hosting in IIS.
You will need to use relative addresses when exposing more
than one endpoint for a particular .svc service (we’ll
discuss why you’d want to do this shortly).
Let’s take a look at an example. Suppose you have a file
named calc.svc and you place it in a virtual directory that
corresponds to http://localhost:8080/calcservice. The base
address for this service will be
http://localhost:8080/calcservice/calc.svc. Assuming you’ve
enabled HTTP GET metadata retrieval, the help page will be
exposed at that same address, which you can simply browse
to in Internet Explorer....
Please see the url http://msdn.microsoft.com/en-
us/magazine/cc163412.aspx#S3
Is This Answer Correct ? | 2 Yes | 0 No |
How to generate proxy for WCF Services?
Where you use WSFederationHttpBinding in WCF?
Please explain different modes of security in wcf? Or explain the difference between transport and message level security.
What is wcf used for?
Which specifications does wcf follow?
What is throttling in wcf?
Explain Address, Binding, and contract for a WCF Service?
What is the messaging pattern? Which messaging pattern wcf supports?
What are different elements of wcf services client configuration file?
What are the advantages of hosting wcf services in iis as compared to self hosting?
What is overloading in wcf?
explain msmq integration binding? : Wcf data services