Consuming WCF Service in Class Library

Posted on 2011-04-26
Last Modified: 2013-11-15
Hello All
I have written a WCF service and hosted it on IIS 7.
I am trying to consume it through a c# class library project.
I tried both SVCUtil.exe and 'Add Service Reference' option in VS 2010. But I cannot seem to access the operation in the service.
I get an 'Object Reference' error.

i know for sure the Service works fine because I ran it in Debug Mode in visual studio, and used the test client.

I read in a blog that class library projects cannot read a config file.
So I use a custom channel factory class to read the .config file for the endpoint and binding.
Its through this channel that i try to access the service operation, and thats where I get the error.

Not getting why..

Please help!
Thanks in advance.
namespace Test
    public class Class1 : ProjectEventReceiver
        public override void OnCheckIn(PSLib.PSContextInfo contextInfo, ProjectPostEventArgs e)

        public void StartService(Guid projectUID)
                CustomChannelFactory<ServiceReference1.IService1> channel = new CustomChannelFactory<ServiceReference1.IService1>("WSHttpBinding_IService1", "C:\\Users\\Administrator\\Documents\\Visual Studio 2010\\Projects\\Test\\Test\\app.config");

                ServiceReference1.IService1 svc = channel.CreateChannel();

            catch (Exception ex)


Open in new window

Question by:suchitrashetty
    LVL 21

    Accepted Solution

    What you read about class libraries and config files is not entirely correct. In Visual Studio each project gets its own config file. However, the config file for a class library is not deployed automatically at run-time, and even if you manually copy it to your application folder it won't be read. The only config file that is used by a running application is the config file for the application's main entry point. If it is a web application that means web.config, if it is any other type of application that means <appname>.exe.config.

    You could try taking all of the endpoint and binding configuration information that was generated in your class library's config file when you set the reference and copy it to the hosting application's configuration file.

    Author Comment

    Thanks andsSorry for the late response.

    That is how i would do it with any application. But in this case, the class library I am developing is an Event Handler to be registered on the Project Server 2010, specifically Project Web Access (PWA). I am new to PWA and Sharepoint customization. Would you know where the config file would be in this case?

    Author Closing Comment

    The solution was not pertinent to my situation.

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Highfive Gives IT Their Time Back

    Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

    Re-planning is just as important as planning. MS Project files need to be updated regularly to reflect the current status of the project and to streamline the upcoming tasks. We have seen a lot of issues where project managers have not updated the p…
    Microsoft SharePoint Foundation 2010 and Microsoft SharePoint Server 2010 do not offer the option to configure the location of the SharePoint diagnostic trace log files during installation.  This can, however, be configured through Central Administr…
    Illustrator's Shape Builder tool will let you combine shapes visually and interactively. This video shows the Mac version, but the tool works the same way in Windows. To follow along with this video, you can draw your own shapes or download the file…
    Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…

    737 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    22 Experts available now in Live!

    Get 1:1 Help Now