Introduction
This is a simple application that generate the interface for the WebService client stub.
Background
What the generated interface can do ? Em... Because the all methods of the WebService client stub are not virtual. So, it is hard to apply unit testing on when business logic depends
on it (the method cannot be mocked).
Using the code
It is very simple that using this function, like this:
var basePath = @"D:\Workspace\YourSolution\YourProject";
var webReference = "WebReference";
var puller = new InterfacePuller(basePath, webReference);
puller.Process();
A code file named "ReferenceExtensions.cs" will be generated under the path <basePath
>/Web References/<webReference
>.
Now, you can declare the fields with the interface type instead of the client stub class type.
private WebService service = new WebService();
private IWebService service = new WebService();