Другой общий случай, когда можно получить это исключение, включает в себя насмешливые классы во время модульного тестирования. Независимо от используемой насмешливой структуры, вы должны убедиться, что все соответствующие уровни иерархии классов должным образом высмеиваются. В частности, все свойства HttpContext
, на которые ссылается тестируемый код, должны быть изделены.
См. « Исключение NullReferenceException при проверке пользовательского AuthorizationAttribute » для несколько подробного примера.
Да, можно установить его, -> щелкнуть правой кнопкой мыши по имени проекта или сборки в visual studio -> select properties -> select Application tab -> изменить имя сборки, как вы хотите.
Пожалуйста, обратитесь к ссылке, чтобы просмотреть окно свойств, в котором есть опция имени сборки
После изменения имени скомпилируйте проект (чтобы проверить изменение ) щелкните правой кнопкой мыши ваш скомпилированный DLL-файл и выберите свойства и перейдите на вкладку «Подробности», в которой вы можете увидеть, что «исходное имя файла» теперь изменено.
ОК, нет ответов, и теперь я нашел обходное решение.
Эта статья здесь, в StackOverflow, была очень полезна: Как установить информацию о версии для существующего .exe, .dll?
, который привел меня к этот проект управления ресурсами, написанный на C #: http://resourcelib.codeplex.com/
Итак, что я собираюсь сделать, это изменить библиотеки DLL после того, как они были
Редактировать (март 2015 г.): Это старая публикация, но я вижу, что в ней все еще есть интерес. Проект «ResourceLib C # File Resource Management Library» с открытым исходным кодом переместился с четырех лет назад и теперь находится здесь: https://github.com/dblock/resourcelib
К сожалению, нет.
Вы можете прочитать, что это такое с System.Diagnostics.FileVersionInfo.OriginalFilename
, но значение заполняется Project / Output Filename
не из любого ассемблера сборки.
Запуск вашего патч-программу, чтобы изменить ее после сборки, рискует нарушить любую цифровую подпись, применяемую во время сборки. Возможно, вам придется строить без подписи, исправлять атрибуты, а затем подписывать их на отдельном шаге.