ASP.NET Предварительная компиляция и объединение с сертификатом подписи строгого имени

#asp.net #signing #precompile #strongname #aspnet-merge

Вопрос:

У меня есть ASP.NET приложение, которое в настоящее время подписано строгим именем, похоже, работает хорошо, и приложение не будет принимать библиотеки DLL с конфликтующими токенами открытого ключа в соответствии с манифестом сборки во время сборки, однако я отклеился при использовании параметров предварительной компиляции и слияния во время публикации.

Опция слияния перед компиляцией, которую я в настоящее время использую,-«объединить все выходные данные в одну сборку», и полученная библиотека DLL из aspnet_merge.exe не имеет строгого имени, и приложение, похоже, не заботится об этом, работает в обычном режиме.

После некоторых исследований я обнаружил, что aspnet_merge.exe имеет параметр для предоставления файла-ключа, хотя он недоступен в графическом интерфейсе публикации Visual Studio (по крайней мере, я его не вижу), поэтому я написал сценарий, который добавил информацию о ключе к команде. При проверке объединенной выходной библиотеки DLL после изменения я вижу, что на самом деле она теперь имеет строгое имя, но проблема в том, что веб-приложение не проверяет открытый токен, как это было бы для других библиотек с строгим именем, что, как я полагаю, связано с тем, что он не является частью манифеста сборки во время сборки?

Есть ли какой-либо способ получить сильную именованную DLL из aspnet_merge.exe, это также проверенный публичный токен, как и другие библиотеки DLL?

Буду признателен за любые предложения или советы.