Инструментарий PostSharp для нескольких библиотек DLL

#c# #postsharp

#c# #postsharp

Вопрос:

Я наткнулся на сообщение об инструменте dll, если у нас нет доступа к исходному коду, в нем были следующие шаги,

Создайте файл postsharp.config со следующим содержимым:

 <Project xmlns="http://schemas.postsharp.org/1.0/configuration">
<Property Name="Input" Value="ClassLibrary2.dll" />
<Property Name="Output" Value="ClassLibrary2.Instrumented.dll" />
<SearchPath Path="C:MyAspects" />
<Multicast>
<LogExecutionTimeAttribute xmlns="clr-namespace:MyAspectsNS;assembly:MyAspects" />
</Multicast>
</Project>
  

Выполнить toolspostsharp-net40-x86-native.exe postsharp.config. (Этот исполняемый файл находится в ZIP-пакете PostSharp)

Он работает отлично, но я хотел использовать несколько библиотек DLL в моей папке bin, возможно ли это?

Ответ №1:

Как отвечено наhttps://support.postsharp.net/request/27365-instrumenting-multiple-dlls :

Эта функция больше не поддерживается в текущих версиях PostSharp. PostSharp 5.44.0 (версия, используемая @Tasheer Hussain) также больше не поддерживается. Итак, если вы продолжите использовать эту функцию, мы (команда PostSharp) не сможем гарантировать помощь, если у вас возникнут какие-либо проблемы.

Одним из способов обработки нескольких сборок может быть удаление входных и выходных свойств из файла конфигурации и передача их в качестве аргументов в компилятор PostSharp. Затем вы бы запустили компилятор несколько раз, используя скрипт, имеющий только один файл конфигурации. Команда будет выглядеть следующим образом:

toolspostsharp-net40-x64-native.exe postsharp.config /p:Input=ClassLibrary2.dll /p:Output=ClassLibrary2.Instrumented.dll