473,763 Members | 3,712 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Some General Questions regarding .Net

I'm a newcomer to .Net and am slowly becoming familiar with it, so I have
some simple questions. Here's the situation:

I created a VB.Net project for my data access layer (DAL), another VB.Net
project for my business logic layer (BLL), and am using ASP.Net web forms as
the front end. So I want by BLL to reference the DAL and the ASP.Net
project to reference the BLL.
Questions:

How does .Net handle the referencing of other dlls and projects?

The ASP.Net project has a bin subdirectory where it looks like it is placing
the referenced dlls, could someone explains how this works?

If I wanted to have a common VB.Net dll used by multiple ASP.Net projects,
would I have to place a copy of the dll in each bin subdirectory for the
different sites?

What if I wanted to add/remove/change some functionality in the dll, how
would I update each site to use the new logic? How is compatibility
handled?

Is there any registering of dlls that needs to take place? Regsvr32.exe
doesn't seem to work, so .Net must handle this differently.

Would I need to do anything special to copy the ASP.Net project to a
different server, or is it as simple as copying files?
Thanks in advance.

Daniel
Jul 21 '05 #1
2 2259
"Daniel" <dh******@data2 you.net> wrote in
news:#Q******** ******@tk2msftn gp13.phx.gbl:
I'm a newcomer to .Net and am slowly becoming familiar with it, so I
have some simple questions. Here's the situation:

I created a VB.Net project for my data access layer (DAL), another
VB.Net project for my business logic layer (BLL), and am using ASP.Net
web forms as the front end. So I want by BLL to reference the DAL and
the ASP.Net project to reference the BLL.
Questions:

How does .Net handle the referencing of other dlls and projects?

The ASP.Net project has a bin subdirectory where it looks like it is
placing the referenced dlls, could someone explains how this works?

If I wanted to have a common VB.Net dll used by multiple ASP.Net
projects, would I have to place a copy of the dll in each bin
subdirectory for the different sites?

What if I wanted to add/remove/change some functionality in the dll,
how would I update each site to use the new logic? How is
compatibility handled?

Is there any registering of dlls that needs to take place?
Regsvr32.exe doesn't seem to work, so .Net must handle this
differently.

Would I need to do anything special to copy the ASP.Net project to a
different server, or is it as simple as copying files?


There is no more DLL Hell with .NET. You can have multiple versions of
the same dll in the GAC (Global Assembly Cache) which is sorta like when
you put a common dll in the windows system folder. However, in order to
put a dll in the GAC you need to assign a strong name to the DLL first.

You can't force an application to use the latest version of a DLL. An
application can be configured to use a specific version even if there is
a later one in the GAC.

If you don't assign a strong name to a dll, then each application must
have it's own copy in the same folder as the executeable.

I say good riddance to regsvr32!!

Michael Lang, MCSD
Jul 21 '05 #2
Thanks for the response. I think I'm starting to get it, but I'm still a
little confused:

So if you don't give the dll a strong name it places a copy of the dll in
the project's bin directory?

How do you give the dll a strong name?

If you do give it a strong name, where does the dll reside? Anywhere you
want?

In the case of a multi-tiered ASP.Net application with a VB.Net BLL and a
VB.Net DAL (Hope this doesn't get too confusing):

If no strong names were used, would the DAL reside in the BLL's bin
directrory?

A copy of the BLL would reside in the ASP.Net project's bin directory, but
would the DAL have to as well? If not, how does the BLL know where the DAL
is and what version to use?
Finally, if I want to update the dll and have all the sites that used the
old dll, upgrade to the new one, how would I do this?

I'm guessing that If it had a strong name it would it do this automatically?

If it didn't have a strong name, would I have to copy it into the bin
directory for each site?

Thanks,
Dan

"Michael Lang" <ml@nospam.co m> wrote in message
news:Xn******** *************** *********@207.4 6.248.16...
"Daniel" <dh******@data2 you.net> wrote in
news:#Q******** ******@tk2msftn gp13.phx.gbl:
I'm a newcomer to .Net and am slowly becoming familiar with it, so I
have some simple questions. Here's the situation:

I created a VB.Net project for my data access layer (DAL), another
VB.Net project for my business logic layer (BLL), and am using ASP.Net
web forms as the front end. So I want by BLL to reference the DAL and
the ASP.Net project to reference the BLL.
Questions:

How does .Net handle the referencing of other dlls and projects?

The ASP.Net project has a bin subdirectory where it looks like it is
placing the referenced dlls, could someone explains how this works?

If I wanted to have a common VB.Net dll used by multiple ASP.Net
projects, would I have to place a copy of the dll in each bin
subdirectory for the different sites?

What if I wanted to add/remove/change some functionality in the dll,
how would I update each site to use the new logic? How is
compatibility handled?

Is there any registering of dlls that needs to take place?
Regsvr32.exe doesn't seem to work, so .Net must handle this
differently.

Would I need to do anything special to copy the ASP.Net project to a
different server, or is it as simple as copying files?


There is no more DLL Hell with .NET. You can have multiple versions of
the same dll in the GAC (Global Assembly Cache) which is sorta like when
you put a common dll in the windows system folder. However, in order to
put a dll in the GAC you need to assign a strong name to the DLL first.

You can't force an application to use the latest version of a DLL. An
application can be configured to use a specific version even if there is
a later one in the GAC.

If you don't assign a strong name to a dll, then each application must
have it's own copy in the same folder as the executeable.

I say good riddance to regsvr32!!

Michael Lang, MCSD

Jul 21 '05 #3

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

4
1938
by: Robert M | last post by:
Hello, I actually have a couple of questions regarding this project. First, I have a pretty good understanding of SQL code. I use to work with dBase III and IV. I now work with Access 97 and 2000 and can do simple Query designs. I have a text file that is about 915mb and consists of records that are fixed in length of 331 characters. There are no records
2
2012
by: Ross Micheals | last post by:
All I have some general .NET questions that I'm looking for some help with. Some of these questions (like the first) are ones that I've seen various conflicting information on, or questions that I'm not sure are specific anomolies that I'm having, or if they are specific known issues I'm facing. 1. In VB.NET, are arrays stored on the stack or the heap? Why must arrays of value types be boxed in order for them to be (effectively) passed by...
1
3267
by: Sean W. Quinn | last post by:
Hey folks, I have a question regarding file handling, and the preservation of class structure. I have a class (and I will post snippets of code later in the post) with both primitive data structures (ints), and more complex data structures (strings and vectors) in it, and would like to write the entire class to a data file that could then be read back and loaded. However I'm having difficulty with this -- I found out (due to an...
1
1816
by: Tony Johansson | last post by:
Hello Experts! I have some questions about inheritance that I want to have an answer to. It says "Abstract superclasses define a behavioral pattern without specifying the implementation" I know that an abstract class doesn't have any implementaion even if a default implementatiion can be supplied for pure virtual methods. What does it actually mean with saying that an Abstract superclasses define a behavioral pattern?
8
5261
by: Mike | last post by:
Hello, I have a few rather urgent questions that I hope someone can help with (I need to figure this out prior to a meeting tomorrow.) First, a bit of background: The company I work for is developing a web-based application, one part of which involves allowing the user the ability to page through transaction "history" information. The _summary_ history table will have the following fields: ServiceName, Date, User-Ref1, User-Ref2,...
6
1341
by: Serge Rielau | last post by:
None of the newsgrous involved here are moderated. Nonetheless maybe it is reasonable to point out that the ratio of flame/content in either newsgroup affects the value the community can draw from it. Over the years the Oracle and IBM employees covering the groups and many of the "regular users" have somehow found a more or less stable truce (with occasional border skirmishes - often cloaked in humor) in the newsgroups. Call it an...
10
1830
by: Hermit Dave | last post by:
Hi, Depending upon their security settings some users can not login due to their machine's Privacy Settings some how blocking the cookie (no privacy policy available)... which is encrypted... what i would like is someone to tell me how to set privacy policy for the cookie.. i know its probably not related to asp.net but googling didnt help much.. even on msdn wasnt helpful much... maybe i was searching with the wrong keywords... any...
2
348
by: Daniel | last post by:
I'm a newcomer to .Net and am slowly becoming familiar with it, so I have some simple questions. Here's the situation: I created a VB.Net project for my data access layer (DAL), another VB.Net project for my business logic layer (BLL), and am using ASP.Net web forms as the front end. So I want by BLL to reference the DAL and the ASP.Net project to reference the BLL. Questions:
0
10145
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
1
9938
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
9822
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
0
8822
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7366
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6642
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5406
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
3917
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
3
2793
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.