• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 378
  • Last Modified:

What is the maximum size for an assembly, and how are instances shared in the GAC?

I have created an Assembly in VB.NET that holds typed DataSet classes of all tables in our SQL Server DB.  The assembly is called by ASP.NET pages.  Currently the Assembly is aprox 3 megs in size, and still growing.  Is the size a concern?  How big is too big?

Is it appropriate to have this assembly located in the GAC?  Or should it be in a web application Bin directory?  If it is in the GAC, is only one instance loaded into memory and shared?  Or does it become a resource hog?


1 Solution
Bob LearnedCommented:
I wouldn't worry about assembly size too much with faster computers these days.  Size may be a concern, but I think that is when it grows to around 15-20 MB.  If it becomes a problem, then you can segment the code into libraries that can be loaded and used when needed, instead having the code all in one assembly.

I treat the GAC like the Windows System Registry with COM (ActiveX) stuff.  It is more of a headache than I think is worth.  You can put dynamic library assemblies in the same location as the executing assembly (bin folder for ASP.NET), or even in a relative-path subfolder.  There just needs to be ways for .NET to find these assemblies.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now