.net - When hosting a WCF REST service in a console app, error finding contract name -


i have wcf rest service works windows service (.net 3.5). make easier build , debug, run console. when this, setting endpoints in console app. when create endpoint, fails error: "the contract name 'irestservice' not found in list of contracts implemented service 'system.runtimetype'."

my interface have [servicecontract] attached it:

namespace restservicelibrary {     [servicecontract]     public interface irestservice     ... 

here console app:

namespace restserviceconsole {     class program     {         static void main(string[] args)         {              webservicehost2 webhost = new webservicehost2(typeof(restservice), new uri("http://localhost:8082"));             serviceendpoint ep = webhost.addserviceendpoint(typeof(irestservice), new webhttpbinding(), "");             servicedebugbehavior stp = webhost.description.behaviors.find<servicedebugbehavior>();             stp.httphelppageenabled = false;             webhost.open();             console.writeline("service , running");             console.writeline("press enter quit ");             console.readline();             webhost.close();          }     } } 

why getting error? how can fix it?

instead of line,

webservicehost2 webhost = new webservicehost2(typeof(restservice), new uri("http://localhost:8082")); 

it should be

webservicehost2 webhost = new webservicehost2(typeof(restservice), true, new uri("http://localhost:8082")); 

there 2 constructors webservicehost2, calling 1 expecting service instance. that's why looking contract in system.runtimetype.


Comments

Popular posts from this blog

c++ - Convert big endian to little endian when reading from a binary file -

C#: Application without a window or taskbar item (background app) that can still use Console.WriteLine() -

unicode - Are email addresses allowed to contain non-alphanumeric characters? -