Sdílet prostřednictvím


AppliesTo – element (šablony sady Visual Studio)

Určuje volitelný výraz, který se má shodovat s jednou nebo více možnostmi (viz VsProjectCapabilityExpressionMatcher). Možnosti jsou zpřístupněny typy projektů prostřednictvím hierarchie jako vlastnost __VSHPROPID5. VSHPROPID_ProjectCapabilities. Tímto způsobem může šablony sdílet více typů projektů, které mají společné příslušné schopnosti.

Tento element je volitelný. Soubor šablony může obsahovat maximálně jednu jeho instanci. Tento element pouze umožňuje určit, kterou šablonu položky lze případně použít, na základě schopností aktuálně vybraného aktivního projektu. Neumožňuje určit, že šablonu položky nelze použít. Pokud AppliesTo chybí nebo výraz se úspěšně nepřihlásí, použije TemplateID se k TemplateGroupID použití šablony stejně jako v předchozích verzích produktu.

Představeno v sadě Visual Studio 2013 Update 2. Pokud chcete odkazovat na správnou verzi, přečtěte si téma Odkazování na sestavení doručená v sadě Visual Studio 2013 SDK Update 2.

<VSTemplate>
   <TemplateData>
      <AppliesTo>

Syntaxe

<AppliesTo>Capability1</AppliesTo>

Atributy a prvky

Následující části popisují atributy, podřízené prvky a nadřazené prvky.

Atributy

Nezaokrouhlovat.

Podřízené prvky

Nezaokrouhlovat.

Nadřazené prvky

Element (Prvek) Popis
TemplateData Určuje kategorii šablony.

Textová hodnota

Je vyžadována textová hodnota. Tento text určuje schopnosti projektu.

Platná syntaxe výrazu je definována takto:

  • Výraz schopností, například "(VisualC | CSharp) + (MSTest | NUnit)".

  • | je operátor OR.

  • Znaky "&" a "+" jsou operátory AND.

  • Znak "!" je operátor NOT.

  • Závorky určují pořadí vyhodnocování.

  • Hodnota null nebo prázdný výraz jsou vyhodnoceny jako shoda.

  • Možnosti projektu můžou být libovolný znak s výjimkou těchto vyhrazených znaků: '':;,+-*/\!~|&%$@^()={}[]<>? \t\b\n\r

Příklad

Následující příklad ukazuje tři různé šablony. Template1 platí buď pro všechny typy projektů jazyka C#, nebo jakýkoli jiný typ projektu, který tuto funkci podporuje WindowsAppContainer . Template2 platí pro všechny projekty jazyka C# jakéhokoli druhu. Template3 platí pro projekty jazyka C#, které nejsou WindowsAppContainer projekty.

<!--  Template 1 -->
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <AppliesTo>CSharp | WindowsAppContainer</AppliesTo>
    </TemplateData>
</VSTemplate>

<!--  Template 2 -->
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <AppliesTo>CSharp</AppliesTo>
    </TemplateData>
</VSTemplate>

<!--  Template 1 -->
<?xml version="1.0" encoding="utf-8"?>
<VSTemplate Version="3.0.0" Type="Item" xmlns="http://schemas.microsoft.com/developer/vstemplate/2005" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://schemas.microsoft.com/developer/vstemplate/2005">
    <TemplateData>
        <AppliesTo>CSharp_Class + (!WindowsAppContainer)</AppliesTo>
    </TemplateData>
</VSTemplate>

Viz také