Share via


ProjectCapability Struct

Definition

Project capability to be used in SolutionHasProjectCapability(ProjectCapability).

[Newtonsoft.Json.JsonConverter(typeof(Microsoft.VisualStudio.Extensibility.ProjectCapability+Converter))]
public readonly struct ProjectCapability : IEquatable<Microsoft.VisualStudio.Extensibility.ProjectCapability>
[<Newtonsoft.Json.JsonConverter(typeof(Microsoft.VisualStudio.Extensibility.ProjectCapability+Converter))>]
type ProjectCapability = struct
Public Structure ProjectCapability
Implements IEquatable(Of ProjectCapability)
Inheritance
ProjectCapability
Attributes
Newtonsoft.Json.JsonConverterAttribute
Implements

Properties

AllTargetOutputGroups
AppDesigner

Indicates that the project uses the app designer for managing project properties.

AssemblyReferences

Indicates that the project supports assembly references.

BuildWindowsDesktopTarget
COMReferences

Indicates that the project supports COM references.

Cordova

The project integrates with and depends on Apache Cordova.

CPS

Project is based on the Project System Extensibility SDK.

CSharp

Project may contain or compile C# source files.

DeclaredSourceItems

Indicates that the project is a typical MSBuild project (not DNX) in that it declares source items in the project itself (rather than a project.json file that assumes all files in the directory are part of a compilation).

DependenciesTree

Indicates that the project supports the dependencies node in Visual Studio.

DeploymentProject

Indicates a project that is capable of provisioning Azure resources using Azure Resource Manager that will create an environment for an application.

EditAndContinue

Indicates that the project supports the edit and continue debugging feature.

FabricApplication

Indicates a project that represents a Service Fabric application.

FileSystemBasedCordovaProject

Indicates that the Cordova project looks to the file system to determine the project content. This is the defining capability for the project system in Visual Studio Tools for Apache Cordova.

FolderPublish

Indicates a project that is capable of publishing the deployment artifacts to a folder.

HandlesOwnReload

Indicates that the project can handle a reload by itself (potentially smartly) without the solution doing a full reload of the project when the project file changes on disk.

HostSetActiveProjectConfiguration
JavaScript

Project contains and handles JavaScript source files.

JavaScriptProject

Indicates that the project supports JavaScript development. This capability also means that the project can manage JavaScript related project items.

JavaScriptUAPProject

The JavaScript project targets the Universal Windows Platform of Windows 10.

JavaScriptWindowsAppContainerProject

Indicates that the project is both "JavaScript" and "WindowsAppContainer", so all JavaScript projects that emit *.AppX bundles will declare this capability.

JavaScriptWindowsPhoneProject

The JavaScript project targets Windows Phone 8.1 platform.

JavaScriptWJProject

The JavaScript project targets Windows 8.1 desktop platform.

LaunchProfiles

Indicates that the project supports multiple profiles for debugging.

LSJavaScript_v45

Indicates a project that represents a LightSwitch JavaScript V4.5 project.

Managed
MultiTarget

Indicates that items in this project may be applied to multiple platforms.

NestedProjects
NoGeneralDependentFileIcon

Indicates that dependent files should have their own corresponding icons instead of generic one.

NotLoadedWithIDEIntegration
OpenProjectFile

Indicates that the project is capable of handling the project file being edited live in an IDE while the project is already loaded.

OutputGroups
PackageReferences

Indicates that the project supports package references. For eg: C# projects use PackageReference items for NuGet package references.

PerPlatformCompilation

(aka. #ifdef capability) Indicates that items in this project are compiled individually for every target platform.

ProjectConfigurationsDeclaredAsItems
ProjectConfigurationsInferredFromUsage
ProjectReferences

Indicates that the project supports project references.

ReferenceManagerAssemblies

Indicates that the project will show the Assemblies tab in the Reference manager dialog in Visual Studio.

ReferenceManagerBrowse

Indicates that the project will show the Browse button in the Reference manager dialog in Visual Studio.

ReferenceManagerCOM

Indicates that the project will show the COM tab in the Reference manager dialog in Visual Studio.

ReferenceManagerProjects

Indicates that the project will show the Projects tab in the Reference manager dialog in Visual Studio.

ReferenceManagerSharedProjects

Indicates that the project will show the Shared Projects tab in the Reference manager dialog in Visual Studio.

ReferenceManagerWinRT

Indicates that the project will show the WinRT tab in the Reference manager dialog in Visual Studio.

RenameNearbySimilarlyNamedImportsWithProject
RunningInVisualStudio
SDKReferences

Indicates that the project supports SDK references.

SharedAssetsProject
SharedImports
SharedProjectReferences

Indicates that the project supports references to Shared Projects.

SingleFileGenerators
SourceItemsFromImports
TestContainer

The project may contain unit tests.

TypeScript

Indicates that the TypeScript build targets are imported into the project and the project is capable of compiling TypeScript source files into JavaScript.

UseFileGlobs

Indicates that the project file can include files using MSBuild file globbing patterns.

UserSourceItems

Indicates that the user is allowed to add arbitrary files to their project.

VB

Project may contain or compile VB source files.

VisualC

Project may contain or compile C++ source files.

VisualStudioWellKnownOutputGroups
WindowsXaml
WindowsXamlCodeBehind
WindowsXamlPage
WindowsXamlResourceDictionary
WindowsXamlUserControl
WinRTReferences

Indicates that the project references WinRT libraries.

Methods

Custom(String)

Initializes a ProjectCapability value.

Equals(Object)

Indicates whether this instance and a specified object are equal.

Equals(ProjectCapability)

Indicates whether the current object is equal to another object of the same type.

GetHashCode()

Returns the hash code for this instance.

ToString()

Returns the string value of ProjectCapability.

Operators

Equality(ProjectCapability, ProjectCapability)

Compares two ProjectCapability values returning whether they are equal.

Implicit(ProjectCapability to String)

Implicitly converts a ProjectCapability to a string.

Implicit(String to ProjectCapability)

Implicitly converts a string to a ProjectCapability.

Inequality(ProjectCapability, ProjectCapability)

Compares two ProjectCapability values returning whether they are different.

Applies to