Hi,
If you do not want to put it in GAC and still want to share it acroos multiple applications, you may need to do the following:
- Create a folder which is outside the solution folders, say c:\MySharedAssembly
- In the post build event [ accessible through project proerties], of the class library, write a script to copy your output [.dll file] to the folder created in #1.
- Also, you need to sign your assembly during compilation, to make it strongly typed. This is the most important step. This is doable through project properties page.
- In the config files of all applications you will need to add a <runtime> section and provide the path for the referenced assembly [c:\MySharedAssembly]. Make sure that copy local is false in your class library.
For example:
Code:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySharedAsm"
culture="neutral" publicKeyToken="08960b9f06749624" />
<codeBase version="2.0.0.0"
href="C:\MySharedAsm.dll"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
Please refer to the following article on MSDN and dwelve a bit , you will get it working:
http://msdn.microsoft.com/en-us/library/7wd6ex19.aspx
Thanks.
P.S.: My current project runs in similar fashion.

, but couldn't share those details on public forum.