@Incubating public interface VisualStudioProject extends Named, Buildable
The content and location of the generate project file can be modified by the supplied methods:
  apply plugin: "cpp"
  apply plugin: "visual-studio"
  model {
      visualStudio {
          projects.all {
              projectFile.location = "vs/${name}.vcxproj"
              projectFile.withXml {
                  asNode().appendNode('PropertyGroup', [Label: 'Custom'])
                          .appendNode('ProjectDetails', "Project is named ${project.name}")
              }
          }
      }
  }
 Named.Namer| Modifier and Type | Method | Description | 
|---|---|---|
| TaskDependency | getBuildDependencies() | Returns a dependency which contains the tasks which build this artifact. | 
| XmlConfigFile | getFiltersFile() | Configuration for the generated filters file. | 
| String | getName() | The object's name. | 
| XmlConfigFile | getProjectFile() | Configuration for the generated project file. | 
@Internal XmlConfigFile getProjectFile()
@Internal XmlConfigFile getFiltersFile()
@Internal TaskDependency getBuildDependencies()
BuildableBuildable implementations
 must ensure that the returned dependency object is live, so that it tracks changes to the dependencies of this
 buildable.getBuildDependencies in interface Buildable