Ну, здесь не так много ответов, но я нашел решение, с которым мне было удобно. У меня есть ProductAssemblyInfo, который находится в папке решения, но связан с каждым проектом, как показано ниже.
Solution
> Build (Solution Folder)
MyKey.snk
ProductAssemblyInfo.cs
> Project X
> _LinkedFiles
ProductAssemblyInfo.cs
> ...
ProductLevelAssembly содержит следующую строку:
[assembly: AssemblyKeyFile("../../Build/MyKey.snk")]
Таким образом, файл ключа никогда не копируется в каждый проект, но каждая сборка все еще подписывается ключом.