@maxp, ¿está preguntando si es mejor incluir la clase como un archivo .cs en el proyecto o como un .dll compilado en las referencias?
Solía mantener las funciones comunes en los archivos de clase (.cs) y simplemente incluirlas en el proyecto en el que estaba trabajando. Las clases viven bajo el control de la fuente, así que solo me aseguraría de obtener la última versión cada vez que creara un nuevo proyecto. Sin embargo, últimamente, he comenzado a compilarlos y registrarlos en el GAC. Esto ayuda a reducir el dolor de cabeza de no saber realmente qué versión de la clase se incluye en un proyecto determinado. Si realiza un cambio en la clase, simplemente vuelva a registrarla en el GAC y todas sus aplicaciones se actualizarán y usarán la misma versión.
El único inconveniente real que he encontrado es si está intentando depurar y recorrer la lógica. Solo asegúrese de que sus clases sean sólidas antes de compilar y colocar en GAC.
Espero que esto ayude a responder su pregunta.
Entonces, ¿una biblioteca es un subconjunto de un ensamblaje? – maxp
No diría subconjunto ... hay superposición entre las dos definiciones ... –