Solved

Distribute Web Service as a DLL - VB.NET

Posted on 2012-03-20
10
454 Views
Last Modified: 2012-06-22
Hi,

I have a Web Service developed in VB.NET. I did create the PROXY by using the WSDL utility. The file name is called "Proxy.vb". Now instead of sharing the "Proxy.vb" file, i want to share it as a DLL so that others can include it as a reference in their projects.

Can you please provide me the complete command for creating the DLL for the above "Proxy.vb" file ? The DLL file name will be "Proxy.DLL".

Basic concept is "Distributing the Web Service as a DLL" and not by using "Web Service Reference" dialog box.

Thanks
0
Comment
Question by:milani_lucie
  • 5
  • 3
  • 2
10 Comments
 
LVL 75

Expert Comment

by:käµfm³d 👽
ID: 37742891
If you create a library project, you can do your "Add Service (or Web) Reference" work there. You will need to distribute the stuff which gets put into web.config with respect to endpoints and bindings (if this is a WCF service). You could set these values up in the code directly, however. You may have to track down which config setting corresponds to which code entity, though.
0
 

Author Comment

by:milani_lucie
ID: 37742922
Here is the post i have got:

http://www.dreamincode.net/forums/topic/117482-make-webservice-a-dll/

vbc /t:library /out:bin\Proxy.dll <path_of_proxy_class> /reference:System.dll,System.Data.dll,System.Web.dll,System.Web.Services.dll,System.XML.dll,System.Runtime.Remoting.dll <and all the other references reqd>  /optimize

What does this means - <and all the other references reqd> ?

Thanks
0
 
LVL 75

Expert Comment

by:käµfm³d 👽
ID: 37742935
The author was abbreviating. If your class library depends on other libraries which you created (or maybe 3rd-party libraries), then you would need to list those as references as well; otherwise, your library may fail to compile or it may fail at runtime due to missing references.
0
 

Author Comment

by:milani_lucie
ID: 37743039
I have created the DLL and add it as a reference (Not Web Service Reference) in Client project. Here is the error i am getting:

The type 'System.Web.Services.Protocols.SoapHttpClientProtocol' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Web.Services, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

Here are the commands i have executed:

wsdl.exe /l:cs /out:Proxy.cs http://localhost:64710/Service1.asmx?WSDL

csc /t:library /out:Proxy.dll c:\Proxy.cs /reference:System.dll,System.Data.dll,System.Web.dll,System.Web.Services.dll,System.XML.dll,System.Runtime.Remoting.dll /optimize

I do NOT want to reference any DLL's in the Client project EXCEPT my Proxy.DLL.

Thanks
0
 

Author Comment

by:milani_lucie
ID: 37743199
Is there any way that i can specify version of the DLLs in CSC command ? Something like this:

csc /t:library /out:Proxy.dll c:\Proxy.cs /reference:System.dll 2.0.0.0,System.Data.dll 2.0.0.0,System.Web.dll 2.0.0.0,System.Web.Services.dll 2.0.0.0,System.XML.dll 2.0.0.0,System.Runtime.Remoting.dll 2.0.0.0 /optimize

Thanks
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 83

Expert Comment

by:CodeCruiser
ID: 37743711
Do you not have Visual Studio? Put your class in a Class Library project, add references visually and just build it.
0
 

Author Comment

by:milani_lucie
ID: 37743988
All the code is hosted as Web Service. So we need not write the same code as "Class Library". And we want to distribute the same to all other projects who needs it. We want to create a PROXY for the Web Service and create a DLL from it so that we can distribute it to other projects easily.

Thanks
0
 
LVL 83

Expert Comment

by:CodeCruiser
ID: 37774289
What I am saying is what you do in http:#a37743199 can be done in visual studio in a more intuitive way.
0
 

Author Comment

by:milani_lucie
ID: 37774494
Can you please let me know how ?
0
 
LVL 83

Accepted Solution

by:
CodeCruiser earned 500 total points
ID: 37776374
Use this tutorial

http://www.c-sharpcorner.com/UploadFile/mahesh/dll12222005064058AM/dll.aspx

Remove the empty class file and add your class using Add Existing Item.
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Need help parsing JSON in my VB.Net application 4 44
C# Json POSt to Rest API 4 37
Message not shown 5 33
Executing SSIS with a Stored Procedure Permissions 12 16
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
Performance in games development is paramount: every microsecond counts to be able to do everything in less than 33ms (aiming at 16ms). C# foreach statement is one of the worst performance killers, and here I explain why.
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
In this video I am going to show you how to back up and restore Office 365 mailboxes using CodeTwo Backup for Office 365. Learn more about the tool used in this video here: http://www.codetwo.com/backup-for-office-365/ (http://www.codetwo.com/ba…

910 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