Rule Class
Used to represent the schema information for a Tool, a Custom Build Rule, a PropertyPage, and so on.
MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0.
Assembly: Microsoft.Build.Framework (in Microsoft.Build.Framework.dll)
Microsoft.Build.Framework.XamlTypes::RuleSchema
Microsoft.Build.Framework.XamlTypes::Rule
| Name | Description | |
|---|---|---|
![]() | Rule() | Default constructor. Required for deserialization from a persisted format. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
| Name | Description | |
|---|---|---|
![]() | AdditionalInputs | When this Rule represents a Build Customization, this field defines the semicolon-separated list of additional inputs to be evaluated for the Build Customization target. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Categories | Gets or sets the list of Category categories that the properties in this Rule belong to. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | CommandLine | When this Rule represents a Build Customization, this field represents the command-line template to be used by a Build Customization task to invoke the tool. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | DataSource | The DataSource for the properties in this Rule. This is overridden by any data source that is defined locally for a property. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Description | Gets or sets a description of this Rule for use by a prospective UI client. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | DisplayName | Gets or sets a name that can be used by a prospective UI client to display this BaseProperty. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | EvaluatedCategories | Returns the union of XAML specified Category categories and auto-generated Category categories. The latter are created from any missing categories that are referred to by the properties in this Rule. The auto-generated Category categories only have their names set. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | ExecutionDescription | When this Rule represents a Build Customization, this field represents the message to be displayed before a Build Customization is executed during the build. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | FileExtension | When this Rule represents a Build Customization, this field represents the file name extension to associate. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | HelpString | Gets or sets Help information for this Rule. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Metadata | Gets or sets arbitrary metadata that may be set on a rule. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Name | The name of this Rule. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Order | Gets or sets a suggestion to a prospective UI client for the relative location of this Rule compared to all other Rules in the system. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Outputs | When this Rule represents a Build Customization, this field defines the semicolon-separated list of outputs that are to be evaluated for the Build Customization target. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | OverrideMode | Gets or sets the method to use when multiple rules with the same name appear in the project to reconcile the rules into one instance. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | PageTemplate | Gets or sets the UI rendering template that is used to display this Rule. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Properties | Gets or sets the list of properties in this Rule. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | PropertyPagesHidden | Gets or sets a flag indicating whether property pages for this rule are hidden. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Separator | Gets or sets a token that is used to separate a property switch from its value. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | ShowOnlyRuleProperties | Gets or sets a flag that determines whether to hide the command-line category. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | SupportsFileBatching | Gets or sets a flag that determines whether multiple files can be batched on one command-line invocation. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | SwitchPrefix | Gets or sets the prefix to use for all property switches in this Rule for the case when this property Rule represents a tool. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | ToolName | Gets or sets the name of the tool when this rule represents a tool. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
| Name | Description | |
|---|---|---|
![]() | BeginInit() | See BeginInit. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | EndInit() | See EndInit. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | Equals(Object^) | (Inherited from Object.) |
![]() | GetHashCode() | (Inherited from Object.) |
![]() | GetPropertiesByCategory() | Returns a dictionary of all properties partitioned into categories. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | GetPropertiesInCategory(String^) | Returns the list of properties in a Category. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | GetProperty(String^) | Gets the property with the specified name. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | GetSchemaObjects(Type^) | Returns an enumerator over all instances of static data that have the given type. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | GetSchemaObjectTypes() | Returns an enumerator over all types of static data for the data-driven features that this node contains. MSBuild is now included in Visual Studio instead of the .NET Framework. You can use MSBuild 12.0 side-by-side with versions previously deployed with the .NET Framework.For more information, see What's New in MSBuild 12.0. |
![]() | GetType() | (Inherited from Object.) |
![]() | ToString() | (Inherited from Object.) |
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

