Я новичок в MS Build и просматриваю многие из встроенных целевых файлов, которые поставляются с Visual Studio. Я видел переменные, переданные несколькими разными способами, и я не совсем уверен в различиях между ними:
$(...)
@(...)
%(...)
Я новичок в MS Build и просматриваю многие из встроенных целевых файлов, которые поставляются с Visual Studio. Я видел переменные, переданные несколькими разными способами, и я не совсем уверен в различиях между ними:
$(...)
@(...)
%(...)
$(...)
используется для доступа к значению Property
(дополнительная информация о элемент свойства)
<PropertyGroup>
<Configuration>Debug</Configuration>
</PropertyGroup>
<Message Text="Configuration = $(Configuration)"/>
@(...)
используется для доступа к значению Item
(дополнительная информация о элемент элемента)
<ItemGroup>
<Reference Include="System.Data"/>
<Reference Include="System.Web.*"/>
</ItemGroup>
<Message Text="References = @(Reference)"/>
%(...)
используется для acces Item Metadata
value (Дополнительная информация о Метаданные товара). Он также использовал batching.
<ItemGroup>
<Compile Include="Account\ChangePassword.aspx.cs">
<DependentUpon>ChangePassword.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
<Compile/>
</ItemGroup>
<Message Text="Element @(Compile) of subtype %(SubType) and depend of %(DependentUpon)"/>
Доллар - $(MyProp): Позволяет ссылаться на значения, указанные в PropertyGroups.
В Sign - @(CodeFile): Позволяет ссылаться на списки элементов, указанных в элементах групп.
Percent -% (CodeFile.BatchNum): Позволяет ссылаться на сопоставленные значения ItemGroup с использованием метаданных. Это немного сложнее, поэтому обязательно просмотрите документацию для получения дополнительной информации.
Взгляните на каждую ссылку, чтобы получить более подробную информацию о том, как они используются. Удачи - надеюсь, что это поможет!