Dans mon cas, nous construisons un produit pour lequel nous avons une solution Visual Studio, avec des composants différents dans leurs propres projets. Les attributs communs aller. Dans la solution, il y a environ 35 projets, et une assemblée commune info (CommonAssemblyInfo.cs), qui a les attributs suivants:
[assembly: AssemblyCompany("Company")]
[assembly: AssemblyProduct("Product Name")]
[assembly: AssemblyCopyright("Copyright © 2007 Company")]
[assembly: AssemblyTrademark("Company")]
//This shows up as Product Version in Windows Explorer
//We make this the same for all files in a particular product version. And increment it globally for all projects.
//We then use this as the Product Version in installers as well (for example built using Wix).
[assembly: AssemblyInformationalVersion("0.9.2.0")]
Les autres attributs tels que AssemblyTitle, AssemblyVersion etc, nous offre par l'assemblée. Lors de la construction d'une assemblée à la fois AssemblyInfo.cs et CommonAssemblyInfo.cs sont intégrées dans chaque assemblée. Cela nous donne le meilleur des deux mondes où vous voudrez peut-être avoir certains attributs communs à tous les projets et des valeurs spécifiques pour certains autres.
Espérons que cela aide.