MSBuild Задача для чтения версии dll Я ищу задачу MSBuild, которая сообщит мне версию конкретной DLL. Есть ли доступная для этого задача? В моем случае DLL является сборкой .Net, поэтому я действительно ищу Assembly.FullName. Ответ 1 Спасибо, сумасшедший! Я думал, что буду делиться рабочим кодом. <Target Name="UpdateWebConfigVersion"> <GetAssemblyIdentity AssemblyFiles="lib\foo.dll"> <Output TaskParameter="Assemblies" ItemName="fooAssemblyInfo"/> </GetAssemblyIdentity> <XmlUpdate XmlFileName="src\Web\ServiceModel.Extensions.config" XPath="//extensions/behaviorExtensions/add[@name='silverlightFaults']/@type" Value="foo.ServiceModel.Extensions.Behaviors.SilverlightFaultBehavior, foo, Version=%(fooAssemblyInfo.Version), Culture=neutral, PublicKeyToken=XXXXXXXX"/> </Target> Ответ 2 GetAssemblyIdentity - ваш человек. Выходы этой задачи содержат записи метаданных элемента с именем Version, PublicKeyToken и Culture. <ItemGroup> <MyAssemblies Include="File1.dll;File2.dll" /> </ItemGroup> <Target Name="RetrieveIdentities> <GetAssemblyIdentity AssemblyFiles="@(MyAssemblies)"> <Output TaskParameter="Assemblies" ItemName="MyAssemblyIdentities"/> </GetAssemblyIdentity> </Target>
Ответ 1 Спасибо, сумасшедший! Я думал, что буду делиться рабочим кодом. <Target Name="UpdateWebConfigVersion"> <GetAssemblyIdentity AssemblyFiles="lib\foo.dll"> <Output TaskParameter="Assemblies" ItemName="fooAssemblyInfo"/> </GetAssemblyIdentity> <XmlUpdate XmlFileName="src\Web\ServiceModel.Extensions.config" XPath="//extensions/behaviorExtensions/add[@name='silverlightFaults']/@type" Value="foo.ServiceModel.Extensions.Behaviors.SilverlightFaultBehavior, foo, Version=%(fooAssemblyInfo.Version), Culture=neutral, PublicKeyToken=XXXXXXXX"/> </Target>
Ответ 2 GetAssemblyIdentity - ваш человек. Выходы этой задачи содержат записи метаданных элемента с именем Version, PublicKeyToken и Culture. <ItemGroup> <MyAssemblies Include="File1.dll;File2.dll" /> </ItemGroup> <Target Name="RetrieveIdentities> <GetAssemblyIdentity AssemblyFiles="@(MyAssemblies)"> <Output TaskParameter="Assemblies" ItemName="MyAssemblyIdentities"/> </GetAssemblyIdentity> </Target>