Files in the Compile item list are compiled. cs files are included in the Compile item list. The item type determines how the file is processed. When the project is loaded, the MSBuild project items (files) are computed. When MSBuild or Visual Studio loads a project, the following high-level actions occur: Publish targets import the appropriate set of targets based on the publish method used. The MSBuild properties and targets associated with each dependent SDK are imported. ( Web SDK) depends on other SDKs, including (. The default location for $(MSBuildSDKsPath) (with Visual Studio 2019 Enterprise) is the %programfiles(x86)%\Microsoft Visual Studio\2019\Enterprise\MSBuild\Sdks folder. The preceding element's Sdk attribute imports the MSBuild properties and targets from $(MSBuildSDKsPath)\\Sdk\Sdk.props and $(MSBuildSDKsPath)\\Sdk\Sdk.targets, respectively. The dotnet new mvc command produces a project file containing the following root-level element: For instructions on publishing to Azure, see Publish an ASP.NET Core app to Azure with Visual Studio. The publish profiles created with Visual Studio can be used with MSBuild and Visual Studio. This document focuses on using Visual Studio 2019 or later to create and use publish profiles. By Sayed Ibrahim Hashimi and Rick Anderson