├── .gitattributes ├── .github └── ISSUE_TEMPLATE.md ├── .gitignore ├── CODE-OF-CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE.txt ├── README.md ├── dotnet-core-2.1.md ├── dotnet-core-3.0-preview1.md ├── dotnet-core-3.0-preview2.md ├── dotnetcore-vs-mapping.md ├── images ├── 222840.png ├── 233047.png ├── 233700.png ├── 234430-01.png ├── 234430-02.png ├── 234657.png ├── beta6-iisx-error.png ├── beta6-pub-dnx.png ├── ef-pkg-cache.png ├── iis_express_download.png ├── missing-sdk-preview2.png ├── missing-sdk-rtm.png ├── setup-failed-another-version.png └── vs2017-ambiguity-error.png ├── install-2.0-vs15.3.md ├── known-issues-vs2015.md ├── known-issues-vs2017-preview.md ├── known-issues-vs2017.md ├── missing-template.md ├── optimize-build-performance-for-solution.md ├── optimize-build-performance-for-solution.png ├── razor-scaffolding-15.3.md ├── release-notes.md └── specs ├── publish-to-linux-from-vs.pdf ├── vs-scaffolding.pptx ├── web-publish-ef-migrations.md └── web-publish-ef-migrations ├── publish-dialog-db-preview-populated.png ├── publish-dialog-db-preview.png ├── publish-dialog-preview.png ├── publish-dialog-settings-discovered-configured-autocomplete.png ├── publish-dialog-settings-discovered-configured.png ├── publish-dialog-settings-discovered.png ├── publish-dialog-settings-discovering.png ├── publish-dialog-settings-tooltip1.png └── publish-dialog-settings-tooltip2.png /.gitattributes: -------------------------------------------------------------------------------- 1 | *.doc diff=astextplain 2 | *.DOC diff=astextplain 3 | *.docx diff=astextplain 4 | *.DOCX diff=astextplain 5 | *.dot diff=astextplain 6 | *.DOT diff=astextplain 7 | *.pdf diff=astextplain 8 | *.PDF diff=astextplain 9 | *.rtf diff=astextplain 10 | *.RTF diff=astextplain 11 | 12 | *.jpg binary 13 | *.png binary 14 | *.gif binary 15 | 16 | *.cs text=auto diff=csharp 17 | *.vb text=auto 18 | *.resx text=auto 19 | *.c text=auto 20 | *.cpp text=auto 21 | *.cxx text=auto 22 | *.h text=auto 23 | *.hxx text=auto 24 | *.py text=auto 25 | *.rb text=auto 26 | *.java text=auto 27 | *.html text=auto 28 | *.htm text=auto 29 | *.css text=auto 30 | *.scss text=auto 31 | *.sass text=auto 32 | *.less text=auto 33 | *.js text=auto 34 | *.lisp text=auto 35 | *.clj text=auto 36 | *.sql text=auto 37 | *.php text=auto 38 | *.lua text=auto 39 | *.m text=auto 40 | *.asm text=auto 41 | *.erl text=auto 42 | *.fs text=auto 43 | *.fsx text=auto 44 | *.hs text=auto 45 | 46 | *.csproj text=auto 47 | *.vbproj text=auto 48 | *.fsproj text=auto 49 | *.dbproj text=auto 50 | *.sln text=auto eol=crlf 51 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | To report new issues, use the [Report a Problem](https://developercommunity.visualstudio.com/) tool. The GitHub Issue Tracker for the aspnet/Tooling repo is now deprecated in favor of the Report a Problem tool. 2 | 3 | If you encounter a problem with Visual Studio, we want to know about it so that we can diagnose and fix it. By using the Report a Problem tool, you can collect detailed information about the problem, and send it to Microsoft with just a few button clicks. See [here](https://docs.microsoft.com/en-us/visualstudio/ide/talk-to-us) for more details. 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/.gitignore -------------------------------------------------------------------------------- /CODE-OF-CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | This project has adopted the code of conduct defined by the Contributor Covenant 4 | to clarify expected behavior in our community. 5 | 6 | For more information, see the [.NET Foundation Code of Conduct](https://dotnetfoundation.org/code-of-conduct). 7 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | Contributing 2 | ====== 3 | 4 | Information on contributing to this repo is in the [Contributing Guide](https://github.com/aspnet/Home/blob/dev/CONTRIBUTING.md) in the Home repo. 5 | -------------------------------------------------------------------------------- /LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) .NET Foundation. All rights reserved. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); you may not use 4 | these files except in compliance with the License. You may obtain a copy of the 5 | License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software distributed 10 | under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 11 | CONDITIONS OF ANY KIND, either express or implied. See the License for the 12 | specific language governing permissions and limitations under the License. 13 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Visual Studio Tooling for ASP.NET Core [Archived] 2 | ================= 3 | 4 | This GitHub project has been archived. 5 | 6 | ## Issues & feature requests 7 | We track functional issues in a variety of places for ASP.NET Tooling. If you have found an issue or have a feature request, please submit an issue to the below repositories. 8 | 9 | |Item|Description|Link| 10 | |----|-----|-----| 11 | |Visual Studio Tools|Creating, Running, Debugging or Publishing an ASP.NET Core app|[File an Issue](https://developercommunity.visualstudio.com/content/problem/post.html?space=8)| 12 | |ASP.NET Core Tools|Tools for ASP.NET Core apps, such as MSBuild targets, Visual Studio extensions, and command line tools.|[File an Issue](https://github.com/dotnet/aspnetcore-tooling/issues)| 13 | |Scaffolding|Scaffolding global tool or Scaffolding templates|[File an Issue](https://github.com/dotnet/scaffolding/issues)| 14 | |WebSDK|MSBuild tasks and targets for publishing ASP.NET Applications|[File an Issue](https://github.com/aspnet/websdk/issues)| 15 | |ASP.NET Core|Cross Platform ASP.NET Core framework|[File an Issue](https://github.com/dotnet/aspnetcore/issues)| 16 | |Entity Framework Core|Cross Platform Entity framework|[File an Issue](https://github.com/dotnet/efcore)| 17 | 18 | -------------------------------------------------------------------------------- /dotnet-core-2.1.md: -------------------------------------------------------------------------------- 1 | # .NET Core 2.1 Preview 1 2 | 3 | To create or open applications targeting .NET Core 2.1, Visual Studio 2017 15.7 or newer is recommended. Click one of the following links to download the latest version of Visual Studio 2017. For instructions on installing and updating Visual Studio 2017, see [Update Visual Studio 2017 to the most recent release](https://docs.microsoft.com/visualstudio/install/update-visual-studio). Also, see instructions on [how to install offline](https://docs.microsoft.com/visualstudio/install/create-an-offline-installation-of-visual-studio). 4 | 5 | * [Download Community 2017](https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=Community&rel=15) 6 | * [Download Professional 2017](https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=Professional&rel=15) 7 | * [Download Enterprise 2017](https://www.visualstudio.com/thank-you-downloading-visual-studio/?sku=Enterprise&rel=15) 8 | 9 | Visual Studio 2017 15.6 supports creating and opening applications targeting .NET Core 2.1, but it contains known issues so 15.7 or newer is recommended. 10 | 11 | Visual Studio 2017 15.5 does not support creating or opening applications targeting .NET Core 2.1. 12 | -------------------------------------------------------------------------------- /dotnet-core-3.0-preview1.md: -------------------------------------------------------------------------------- 1 | # .NET Core 3.0 Preview 1 2 | 3 | To create or open applications targeting .NET Core 3.0, Visual Studio 2019 or newer is required. Click the following link to download the latest version of Visual Studio 2019. If you are after an offline installation follow these instructions on [how to install offline](https://docs.microsoft.com/visualstudio/install/create-an-offline-installation-of-visual-studio). 4 | 5 | * [Download Visual Studio 2019](https://visualstudio.microsoft.com/vs/preview/) 6 | 7 | ### Known issues in Visual Studio 2019 8 | 9 | When creating a new project Visual Studio may show you a yellow bar with the message 10 | "**ASP.NET Core 3.0 or newer projects are not supported by this version of Visual Studio**" 11 | 12 | **Workaround:** You need to hit 'Cancel' in dialog and then restart VS for the yellow-bar message to go away and ASP.NET Core 3.0 to show up in the dropdown. Simply cancel and re-open dialog without restarting VS does not fix the issue. 13 | -------------------------------------------------------------------------------- /dotnet-core-3.0-preview2.md: -------------------------------------------------------------------------------- 1 | # .NET Core 3.0 Preview 2 2 | 3 | To create or open applications targeting .NET Core 3.0 Preview 2, Visual Studio 2019 16.0-preview2 or newer is required. Click the following link to download the latest version of Visual Studio 2019. If you are after an offline installation follow these instructions on [how to install offline](https://docs.microsoft.com/visualstudio/install/create-an-offline-installation-of-visual-studio). 4 | 5 | * [Download Visual Studio 2019](https://visualstudio.microsoft.com/vs/preview/) 6 | -------------------------------------------------------------------------------- /dotnetcore-vs-mapping.md: -------------------------------------------------------------------------------- 1 | # Visual Studio Version Requirements for .NET Core 2 | Last updated: 2018-08-10 3 | 4 | The version of .NET Core you are targeting dicates the minimum required version of Visual Studio. The current required versions are as follow: 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 |
.NET Core versionMinimum Visual Studio version
1.0Visual Studio 2017 15.0
1.1Visual Studio 2017 15.0
2.0Visual Studio 2017 15.3
2.1Visual Studio 2017 15.7
2.2Visual Studio 2017 15.9
-------------------------------------------------------------------------------- /images/222840.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/222840.png -------------------------------------------------------------------------------- /images/233047.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/233047.png -------------------------------------------------------------------------------- /images/233700.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/233700.png -------------------------------------------------------------------------------- /images/234430-01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/234430-01.png -------------------------------------------------------------------------------- /images/234430-02.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/234430-02.png -------------------------------------------------------------------------------- /images/234657.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/234657.png -------------------------------------------------------------------------------- /images/beta6-iisx-error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/beta6-iisx-error.png -------------------------------------------------------------------------------- /images/beta6-pub-dnx.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/beta6-pub-dnx.png -------------------------------------------------------------------------------- /images/ef-pkg-cache.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/ef-pkg-cache.png -------------------------------------------------------------------------------- /images/iis_express_download.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/iis_express_download.png -------------------------------------------------------------------------------- /images/missing-sdk-preview2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/missing-sdk-preview2.png -------------------------------------------------------------------------------- /images/missing-sdk-rtm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/missing-sdk-rtm.png -------------------------------------------------------------------------------- /images/setup-failed-another-version.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/setup-failed-another-version.png -------------------------------------------------------------------------------- /images/vs2017-ambiguity-error.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/images/vs2017-ambiguity-error.png -------------------------------------------------------------------------------- /install-2.0-vs15.3.md: -------------------------------------------------------------------------------- 1 | To get started with .NET Core 2.0 in Visual Studio 2017 follow the steps below. 2 | 3 | - Install .NET Core 2.0 - https://www.microsoft.com/net/core 4 | - Restart Visual Studio 2017 5 | 6 | After these steps you can create new projects in the New Project Dialog. For docs please see https://docs.microsoft.com/en-us/aspnet/core/. -------------------------------------------------------------------------------- /known-issues-vs2015.md: -------------------------------------------------------------------------------- 1 | # Known issues for ASP.NET Core support in Visual Studio 2015 2 | 3 | While you can still use the existing VS 2015 tooling previews for .NET Core and ASP.NET Core development, Visual Studio 2017 is now the officially supported tool for developing .NET Core and ASP.NET Core projects. 4 | 5 | If you encounter any issues with VS 2015 not already listed below, you can report them using the Report a Problem tool on our [Developer Community](https://developercommunity.visualstudio.com/) site, where you can track the status and see issues reported by others as well. 6 | 7 | If you encounter a problem with Visual Studio, we want to know about it so that we can diagnose and fix it. By using the Report a Problem tool, you can collect detailed information about the problem, and send it to Microsoft with just a few button clicks. See [Visual Studio’s Talk to Us page](https://docs.microsoft.com/en-us/visualstudio/ide/talk-to-us) for more details. The GitHub Issue Tracker for the aspnet/Tooling repo is now deprecated in favor of the Report a Problem tool. 8 | 9 | ## .NET Core - VS 2015 Tooling Preview 2 10 | 11 | ### Visual Studio 2015 fails to restore NuGet packages after install Visual Studio 2017 12 | After installing Visual Studio 2017 on the same machine as Visual Studio 2015 with .NET Core tooling, restoring NuGet packages in an ASP.NET Core project using Visual Studio 2015 fails 13 | 14 | * #### Issue: 15 | On a machine that already has VS 2015 with .NET Core Tooling, if you install VS 2017 and then try to restore packages for an ASP.NET project using VS 2015, it might fail with the following error message: 16 | 17 | MSBUILD : error MSB4025: The project file could not be loaded. Data at the root level is invalid. Line 1, position 1 18 | 19 | * #### Workaround: 20 | Install the latest update for [.NET Core VS 2015 tooling](https://www.microsoft.com/net/core#windowsvs2015) to resolve the above error. After installing this update, you will be able to restore NuGet packages again using VS 2015. 21 | 22 | ### Missing SDK 23 | 24 | If you open or create a .NET Core project project and Visual Studio cannot find the corresponding .NET Core SDK, you'll get a dialog box similar to the following: 25 | 26 | ![error box missing sdk](./images/missing-sdk-preview2.png) 27 | 28 | **This occurs if:** 29 | 30 | #### You installed Visual Studio 2017 RC on the same machine 31 | 32 | This is caused by Visual Studio 2017 RC installing both the x86 and x64 versions of the .NET Core SDK. 33 | To workaround the issue, edit your PATH environment variable to only point to the version of the SDK that matches your operating system architecture (e.g. if your operating system is x64, remove the entry from the PATH that points to "C:\Program Files (x86)\dotnet") 34 | 35 | #### The correct version of the .NET SDK is not installed 36 | 37 | To workaround this you can install the correct version of the .NET SDK. You can use the links below. 38 | 39 | #### .NET Core 1.0.1 SDK 1.0.0-preview2-003131 download links 40 | 41 | | Platform | Link | 42 | |-------------|---------------| 43 | | Windows x64 | https://go.microsoft.com/fwlink/?LinkID=830694 | 44 | | Windows x86 | https://go.microsoft.com/fwlink/?LinkID=830695 | 45 | 46 | #### .NET Core 1.0.0 SDK 1.0.0-preview2-003121 download links 47 | 48 | | Platform | Link | 49 | |-------------|---------------| 50 | | Windows x64 | https://go.microsoft.com/fwlink/?LinkID=809122 | 51 | | Windows x86 | https://go.microsoft.com/fwlink/?LinkID=809123 | 52 | 53 | #### .NET Core 1.0.0 RC2 SDK 1.0.0-preview1-002702 download links 54 | 55 | | Platform | Link | 56 | |-------------|---------------| 57 | | Windows x64 | https://go.microsoft.com/fwlink/?LinkID=798398 | 58 | | Windows x86 | https://go.microsoft.com/fwlink/?LinkID=798399 | 59 | 60 | ## .NET Core 1.0.0 - VS 2015 Tooling Preview 2 61 | 62 | ### Razor IntelliSense 63 | 64 | ● **Issue**: IntelliSense adds extra characters in certain circumstances 65 |     In the Razor editor, if you type ```@``` then some C# code, and you commit statement completion with the word fully typed out, additional characters will get added to the editor. For example, if you type ```@while``` then tab or space, an extra "while" will get added to the editor. 66 | 67 | ![example](./images/234430-01.png) 68 | ![example](./images/234430-02.png) 69 | 70 |     **Workaround**: Either do not type out the whole word, or dismiss statement completion. 71 | 72 |     **Fix**: We are working on a fix and will be delivered as an update to Visual Studio Update 3. 73 | 74 | ### Setup 75 | 76 | ● **Issue**:Error on uninstall when the original installer has been deleted. 77 |     In some cases if you have previously installed ".NET Core RC2 Tooling Preview 1" or "ASP.NET 5 RC1" and you try to uninstall it, you might run into the following dialog. This can happen if you previously downloaded the installer to the Downloads folder but it's not there anymore. 78 | 79 | ![example](./images/222840.png) 80 | 81 |     **Workaround**: Download the original installer and use that to uninstall link. Download links below. 82 | 83 | - RC2 ([1.0.20513.14](https://download.microsoft.com/download/4/6/1/46116DFF-29F9-4FF8-94BF-F9BE05BE263B/DotNetCore.1.0.0.RC2-VS2015Tools.Preview1.exe)) 84 | - RC1 U1 we shipped for Visual Studio as part of an updated Web Developer Tools ([1.0.20204.0](http://download.microsoft.com/download/1/8/0/18048EDD-9F45-479A-B208-6F7C91CF2ECC/AspNet5.ENU.RC1_Update1_KB3137909.exe)) 85 | - RC1 U1 we shipped for Azure SDK 2.8 ([1.0.11125.0](http://download.microsoft.com/download/D/E/B/DEB395C9-C875-47F3-96F7-55C9A8FCD869/AspNet5.ENU.RC1_Update1.exe)) 86 | - RC1 U1 ([1.0.11123.0](http://download.microsoft.com/download/B/0/A/B0AEBD7D-6979-4265-B1AC-A0B73618FB22/AspNet5.ENU.RC1_Update1.exe)) 87 | - RC1 (without U1) ([1.0.11117.0](http://download.microsoft.com/download/3/C/A/3CAA9F6A-1856-43D3-922D-416D187A6929/AspNet5.ENU.RC1.exe)) (original download page available [here](https://www.microsoft.com/en-us/download/details.aspx?id=49959)) 88 | 89 | ● **Issue**:After installing the tooling, you might run into the following dialog when trying to create a project. This is due to an issue in Visual Studio 2015 Update 3 setup that sometimes caused stale entries in the devenv.exe.config file. 90 | ![image](https://cloud.githubusercontent.com/assets/8246794/16893387/6fde305e-4aeb-11e6-955f-7c64b48d7e36.png) 91 | 92 |     **Workaround**: 93 | 1. Close Visual Studio 94 | 1. Delete the `C:\Users\\AppData\Local\Microsoft\VisualStudio\14.0\devenv.exe.config` file. 95 | 1. Run the Developer Command Prompt for VS2015 as the Administrator, and execute the `devenv /setup` command. 96 | 97 | ● **Issue**:Setup failed: another version already installed 98 |     In some cases you may get an error dialog on setup with an error message "0x80070666 - Another version of this product is already installed." 99 | 100 | ![error](./images/setup-failed-another-version.png) 101 | 102 |     **Workaround**: See the [Known issues](https://msdn.microsoft.com/en-us/vs-knownissues/vs2015-update3-rc) page for Visual Studio 2015 Update 3 RC for additional details. 103 | 104 | ● **Issue**:Multiple entries found in Add Remove Programs 105 |     When upgrading tooling, previous versions continue to show up in Add/Remove Programs. This typically happens when the previous bundle is being removed as part of the upgrade and fails to locate the original source of the installer. The log files for the uninstall would contain entries similar to this 106 | 107 | ``` 108 | [47B8:0798][2016-06-24T18:36:44]w210: Plan skipped due to 1 remaining dependents 109 | [47B8:0798][2016-06-24T18:36:44]i207: Planned related bundle: {58140f9c-9a01-4e20-bc5f-8ca652fd3ec4}, type: Upgrade, default requested: None, ba requested: None, execute: None, rollback: None, dependency: None 110 | ``` 111 | 112 |     **Workaround**: Leaving the previous bundle in Add/Remove Programs should not cause any problems. You can remove it by following the steps below. __Note: these steps require registry updates, please use caution.__ 113 | 114 | 1. Open REGEDIT 115 | 1. Under `HKCR\Installers\Dependencies` find subkeys using the GUIDs from the log messages. For example from the log above `HKCR\Installers\Dependencies\{GUID}\Dependents\{58140f9c-9a01-4e20-bc5f-8ca652fd3ec4}` 116 | 1. Only delete the highlighted registry key above and run the uninstall again 117 | 118 | 119 | ### Project System 120 | 121 | ● **Issue**: Variables not appearing in debugger for Razor views 122 |     During debugging, when you hit a breakpoint in C# code in a Razor page, you cannot get information about variables in the watch window. 123 | 124 | ![image](https://cloud.githubusercontent.com/assets/8246794/16893428/7b7116f6-4aec-11e6-9749-6d64aefaa64e.png) 125 | 126 |     **Workaround**: None 127 | 128 |     **Fix**: We are working on a fix and will be delivered as an update to Visual Studio Update 3. 129 | 130 | ● **Issue**: IIS Express fails start after copying a project/solution from one folder to another. 131 |      132 | 133 |     **Workaround**: Close all instances of Visual Studio and delete the `.vs` folder. 134 | 135 |     **Fix**: We are working on a fix to be included in a future release of .NET Core Tooling. 136 | 137 | ● **Issue**: Poor error experience for "Can not find runtime target framework" 138 |      In some cases you may see multiple errors relating to "Can not find runtime target for framework..." 139 | 140 | ![error](./images/233700.png) 141 | 142 |     **Workaround**: None 143 | 144 |     **Fix**: We are investigating. 145 | 146 | 147 | ● **Issue**: Errors shown in `project.json` for valid packages 148 |      In some cases when the `project.json` file is open in the editor it will show errors for packages which were restored fine. The exact details are still under investigation. 149 | 150 |     **Workaround**: You can ignore the squiggles and error messages for these packages. 151 | 152 |     **Fix**: We are investigating. 153 | 154 | ### EF Migrations 155 | 156 | ● **Issue**: Package cache executes on first EF migration command 157 |      When you run ```dotnet ef migrations``` or other dotnet commands, you might see that it takes a while for dotnet CLI to populate the local package cache. This is expected and should only happen one-time per user on the machine. 158 | 159 | ![console](./images/ef-pkg-cache.png) 160 | 161 |     **Workaround**: There is no impact after the initial delay. 162 | 163 |     **Fix**: We are investigating. 164 | 165 | ● **Issue**: Running ```dotnet ef``` from command-line fails when IIS Express is running 166 |     When working with ef migrations from the command line, for example, when running a command like ```dotnet ef migrations add Initial``` you may get an error similar to the following. 167 | 168 | ``` 169 | C:\3\MvcMovie\src\MvcMovie>dotnet ef migrations add Initial 170 | Project MvcMovie (.NETCoreApp,Version=v1.0) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information. 171 | Compiling MvcMovie for .NETCoreApp,Version=v1.0 172 | C:\Program Files\dotnet\dotnet.exe compile-csc @C:\3\MvcMovie\src\MvcMovie\obj\Debug\netcoreapp1.0\dotnet-compile.rsp returned Exit Code 1 173 | Compilation failed. 174 | C:\3\MvcMovie\src\MvcMovie\error CS2012: Cannot open 'C:\3\MvcMovie\src\MvcMovie\bin\Debug\netcoreapp1.0\MvcMovie.dll' for writing -- 'The process cannot access the file 'C:\3\MvcMovie\src\MvcMovie\bin\Debug\netcoreapp1.0\MvcMovie.dll' because it is being used by another process.' 175 |     0 Warning(s) 176 |     1 Error(s) 177 | Time elapsed 00:00:04.3201268 178 | Build failed on 'MvcMovie'. 179 | ``` 180 | 181 |     **Workaround**: : Exit IIS Express from the system tray. This will unlock the dll and allow the command to run. 182 | 183 |     **Fix**: We are investigating. 184 | 185 | ### Publish 186 | 187 | ● **Issue**: Errors when publishing with EF migrations on Windows 7 188 |      If you publish a web project with EF migrations on Windows 7 you may get an error due to missing commands. This is because the current script uses features which require PowerShell v3. 189 | 190 |     **Workaround**: Install PowerShell v3 191 | 192 |     **Fix**: We are working on a fix which should be included in a future release of .NET Core Tooling. 193 | 194 | ● **Issue**: Register functionality of app fails if EF Migrations were not applied 195 |      After publishing a project that includes authentication, the app will fail to run if EF Migrations were not applied on publish. 196 | 197 |     **Workaround**: Update the publish profile to execute EF Migrations. This can be found on the Settings tab of the Publish Web dialog. 198 | 199 | ### Scaffolding 200 | 201 | ● **Issue**: Compiler error while scaffolding an MVC controller 202 |      In some cases you may get an error dialog when scaffolding. 203 | 204 | ``` 205 | --------------------------- 206 | Microsoft Visual Studio 207 | --------------------------- 208 | Error 209 | 210 | There was an error running the selected code generator: 211 | 212 | 'Project WebApplication6 (.NETCoreApp,Version=v1.0) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information. 213 | Compiling WebApplication6 for .NETCoreApp,Version=v1.0 214 | Running with configuration from C:\temp\WebApplication6\src\WebApplication6\bundleconfig.json 215 | Processing wwwroot/css/site.min.css 216 | Bundled 217 | Minified 218 | Processing wwwroot/js/site.min.js 219 | Compilation failed. 220 | 0 Warning(s) 221 | 1 Error(s) 222 | Time elapsed 00:00:05.9348301' 223 | --------------------------- 224 | OK 225 | --------------------------- 226 | ``` 227 | 228 | See https://github.com/aspnet/Scaffolding/issues/258 229 | 230 |     **Workaround**: Retry scaffolding 231 | 232 |     **Fix**: We are investigating 233 | 234 | ● **Issue**: Bad experience scaffolding when the project fails to build. 235 |      Scaffolding output doesn't contain the compilation errors if the project compilation fails during scaffolding. For example here is the actual output. 236 | 237 | ``` 238 | Build Failed 239 | Project WebApplication8 (.NETCoreApp,Version=v1.0) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information. 240 | Compiling WebApplication8 for .NETCoreApp,Version=v1.0 241 | RunTime 00:00:08.53 242 | Running with configuration from C:\Users\fwtlaba\Documents\Visual Studio 2015\Projects\WebApplication8\src\WebApplication8\bundleconfig.json 243 | Processing wwwroot/css/site.min.css 244 | Bundled 245 | Minified 246 | Processing wwwroot/js/site.min.js 247 | Compilation failed. 248 | 0 Warning(s) 249 | 1 Error(s) 250 | Time elapsed 00:00:06.6119118 251 | ``` 252 | 253 | And the expected output. 254 | 255 | ``` 256 | Build Failed 257 | Project WebApplication8 (.NETCoreApp,Version=v1.0) will be compiled because project is not safe for incremental compilation. Use --build-profile flag for more information. 258 | Compiling WebApplication8 for .NETCoreApp,Version=v1.0 259 | Running with configuration from C:\Users\fwtlaba\Documents\Visual Studio 2015\Projects\WebApplication8\src\WebApplication8\bundleconfig.json 260 | Processing wwwroot/css/site.min.css 261 | Bundled 262 | Minified 263 | Processing wwwroot/js/site.min.js 264 | C:\Program Files\dotnet\dotnet.exe compile-csc @C:\Users\fwtlaba\Documents\Visual Studio 2015\Projects\WebApplication8\src\WebApplication8\obj\Debug\netcoreapp1.0\dotnet-compile.rsp returned Exit Code 1 265 | C:\Users\fwtlaba\Documents\Visual Studio 2015\Projects\WebApplication8\src\WebApplication8\Program.cs(21,23): error CS1002: ; expected 266 | 267 | Compilation failed. 268 | 0 Warning(s) 269 | 1 Error(s) 270 | 271 | Time elapsed 00:00:09.4108500 272 | ``` 273 | 274 | See https://github.com/aspnet/Scaffolding/issues/260 275 | 276 |     **Workaround**: None 277 | 278 |     **Fix**: We are investigating. 279 | 280 | ● **Issue**: Scaffolding MVC w/views assumes the presence of _ValidationScriptsPartial.cshtml 281 |      When scaffolding a new MVC controller with views using Entity Framework, the Create and Edit views reference _ValidationScriptsPartial.cshtml, which is only included in the Individual Auth template, causing this error in other templates: 282 | 283 | ``` 284 | InvalidOperationException: The partial view '_ValidationScriptsPartial' was not found. The following locations were searched: 285 | /Views/Movies/_ValidationScriptsPartial.cshtml 286 | /Views/Shared/_ValidationScriptsPartial.cshtml 287 | ``` 288 | 289 |     **Workaround**: Copy `_ValidationScriptsPartial.cshtml` from a new project. 290 | 291 |     **Fix**: We are investigating. 292 | 293 | See https://github.com/aspnet/Scaffolding/issues/257 294 | 295 | ● **Issue**: Connection string is added in a different location than the templates 296 |      If you use scaffolding to create a dbcontext while creating a controller it will add a connection string to appsettings.json and the code to read it in ConfigureServices. However, it's still using the location and APIs that were used in the RC1 templates and does not match the RC2 or RTM templates. 297 | 298 |     **Workaround**: After scaffolding move the connection string to the desired location. 299 | 300 |     **Fix**: We are working on a fix which should be included in a future version of .NET Core Tooling. 301 | 302 | See https://github.com/aspnet/Scaffolding/issues/259 303 | 304 | ● **Issue**: Scaffolding fails when model class is in a different project. 305 |      Scaffolding fails if model class is in a dependency (project/ library) of the project on which scaffolding is being run. 306 | 307 |     **Workaround**: None 308 | 309 |     **Fix**: We are investigating. 310 | 311 | ## .NET Core 1.0.0 RC2 – VS 2015 Tooling Preview 1 312 | 313 | Known issues in this release. 314 | 315 | Note: There is a known issue with Visual Studio 2015 Update 3 RC, as a result of which, .NET Core 1.0.0 RC2 - VS 2015 Tooling Preview 1 may fail to install after Visual Studio 2015 Update 3 RC is installed. [See here](https://go.microsoft.com/fwlink/?LinkId=808095) for additional details and workaround. 316 | 317 | ### Add New Item 318 | 319 | In some cases the Add New Item dialog will select the wrong item by default. For example with the PowerShell tools installed when you start Add New Item one of the PowerShell templates may be selected by default. This is also impacting the Add Class menu option. 320 | 321 | ### Debugging Unhandled Exception dialog does not appear 322 | 323 | In some cases the Unhandled Exception dialog does not appear when it should. 324 | 325 | ### Scaffolding 326 | 327 | #### Limited to Web Individual Auth 328 | Scaffolding is currently limited to the Web template with Individual Authentication. We are hoping to support scaffolding for all projects in the next release. 329 | 330 | #### Connection string and EF Migrations on publish 331 | 332 | Currently the scaffolding feature directly embeds the connection string into code. This doesn't work well if you also use the EF Migrations publish feature. To get these two to work well together, move the connection string from code into the `appsettings.json` file. 333 | 334 | ### Publish 335 | 336 | #### Azure Web Apps 337 | 338 | The shared framework is not available in Azure Web Apps yet. We are working on getting it included. 339 | 340 | #### Publishing RC1 projects with RC2 tooling publishes source files 341 | 342 | When publishing an RC1 project with RC2 tooling, source files will be published even if you checked the "No Source" checkbox in RC1. To change to publishing binaries you'll need to modify the publish profile (.pubxml file under Properties\PublishProfiles) to include the following. For details on the workaround see http://stackoverflow.com/a/37425515. 343 | 344 | #### Target runtime dropdown 345 | 346 | In some cases the target runtime debug dropdown doesn't get populated correctly. 347 | 348 | #### Preview always shows appsettings.production.json as delete 349 | 350 | The web publish dialog always shows `appsettings.production.json` as being deleted even when it will not. 351 | 352 | #### Publish and Org Auth projects 353 | 354 | In some cases after publishing a project using Org Auth, the published application may fail to run. 355 | 356 | ### General 357 | 358 | #### Dependencies not copied to the output folder 359 | 360 | In some cases all dependencies are not copied to the output folder. 361 | 362 | ### AI+ Work & School Account + SSO (no Read/Write) 363 | 364 | You may get an error when using Work and School accounts and AI. 365 | 366 | More info: https://github.com/aspnet/Templates/issues/569 367 | 368 | #### BrowserLink and signed applications 369 | 370 | Microsoft.VisualStudio.Web.BrowserLink.Loader package cannot be loaded in a signed web application. app.UseBrowserLink() must be removed for the application to run. 371 | 372 | #### Property Page update while open 373 | 374 | Having property page open and modifying properties in project.json doesn't update property page 375 | 376 | #### IIS Express is an option for Console applications 377 | 378 | IIS express shows up as an option in the Launch drop down on Debug page for Console Application 379 | 380 | #### Issues with project-to-project references 381 | 382 | There are some issues when using an .xproj referencing a .csproj. 383 | 384 | All outputs may not be copied to the output folder. For example when using reference assemblies. 385 | 386 | [Roslyn #10471](https://github.com/dotnet/roslyn/issues/10471) - Portable Class library - > Platform target 'AnyCPU' is not supported by one or more of the project's targets. 387 | 388 | [dotnet cli #2961](https://github.com/dotnet/cli/issues/2961) - Runtime error after add reference from xproj web app (netcoreapp) to PCL csproj with project.json (netstandard) 389 | 390 | 391 | ## ASP.NET 5 RC1 392 | 393 | 394 | Here are the known issues with ASP.NET 5 RC1 395 | 396 | 397 | #### Tooling issues related to install of ASP.NET 5 RC1 398 | 399 | 1. If you install ASP.NET 5 RC1 on a machine without Visual Studio 2015, then install Visual Studio 2015 later, you will need to repair 'ASP.NET 5 RC1' in Add/Remove programs to get tooling support in Visual Studio 2015 for ASP.NET 5 RC1 400 | 401 | 2. If you install ASP.NET 5 RC1 on a machine that already has Visual Studio 2015, then install a VS 2015 language pack, you will need to repair 'ASP.NET 5 RC1' in Add/Remove programs to get tooling support in Visual Studio for web projects 402 | 403 | 3. After installing RC1 Update 1, Browser Link may be disabled in DNX projects that are created after the installation. If the Browser Link Dashboard displays "No current connections" when running or debugging a DNX project a repair of the update will correct the issue: 404 | 1. Close Visual Studio 405 | 2. Open Control Panel > Uninstall a Program 406 | 3. Right click on "Microsoft ASP.NET 5 RC1 Update 1" 407 | 4. Click "change" 408 | 5. In the ASP.NET 5 RC1 Update 1 Installer, click "Repair" 409 | 410 | 4. Visual Studio keeps showing suggested extensions in the yellow info bar when opening an HTML file. It also shows an error message when there are Git merge conflicts or with Annotate and Excluded Folder documents. 411 | [More details here](http://blogs.msdn.com/b/webdev/archive/2016/01/12/visual-studio-keeps-showing-suggested-extensions.aspx). 412 | 413 | ## ASP.NET 5 Beta8 414 | 415 | Here are the known issues with ASP.NET 5 Beta8 416 | 417 | #### ComponentModelCache needs to be cleared 418 | 419 | Visual Studio caches some of it's internal state in the `ComponentModelCache` folder. In some cases this cache may be invalidated, but not updated correctly. The result is that you may run into a number of errors which cannot be explained directly. 420 | 421 | For example any of the following error messages could indicate an issue with an invalid `ComponentModelCache`. 422 | 423 | ``` 424 | System.ArgumentException: Item has already been added. Key in dictionary: 'RazorSupportedRuntimeVersion' 425 | ``` 426 | 427 | ``` 428 | This project is incompatible with the current edition of Visual Studio: 429 | 430 | Microsoft Visual Studio Community 2015 Version 14.0.23107.0 D14REL 431 | Microsoft .NET Framework 432 | Version 4.6.00079 433 | 434 | ``` 435 | 436 | **Workaround** 437 | 438 | To work around this. 439 | 440 | 1. Close all instances of Visual Studio 441 | 2. Delete the folder at `%localappdata%\Microsoft\VisualStudio\14.0\ComponentModelCache` 442 | 3. Restart Visual Studio 443 | 444 | #### Issues with NuGet 445 | 446 | If you experience any issues with NuGet packages not being resolved, or being resolved to unexpected versions. The best thing to try install the latest version of NuGet from https://visualstudiogallery.msdn.microsoft.com/5d345edc-2e2d-4a9c-b73b-d53956dc458d/file/146283/8/NuGet.Tools.vsix. 447 | 448 | Some examples off issues that may be resolved by updating NuGet are below. 449 | 450 | - NuGet feed for nuget.org is disabled 451 | - Package restore returns `beta8` packages instead of `beta5` packages 452 | 453 | #### System beep on stop debugging 454 | 455 | With ASP.NET 5 Beta8 we have changed how web applications are hosted with the Visual Studio debugger. In this release when you stop debugging you may notice there is a system beep that occurs at the end of debugging. This is a known issue that should be fixed with the first update for Visual Studio 2015 itself. The only workaround is to disable system sounds for this release. There is no functional impact. 456 | 457 | ## ASP.NET 5 Beta6 458 | 459 | #### First F5 with IIS Express may not work 460 | 461 | Sometimes, after you create an ASP.NET Web Application project for the first time, when you hit F5 for the first time, iisexpress.exe will exit with error code 666. 462 | 463 | ![iisexpress-error](./images/beta6-iisx-error.png) 464 | 465 | **Workaround** 466 | 467 | If you run into this error you should be able to hit F5 again to get the project to launch correctly. 468 | 469 | #### Access Denied when installing DNX runtime using DNVM 470 | 471 | In some cases, when creating an ASP.NET 5 project, DNVM fails to install the DNX runtime, and you will see the following error in the DNVM log: 472 | 473 | ``` 474 | Installing to C:\Users\balach\.dnx\runtimes\dnx-clr-win-x86.1.0.0-beta6 475 | Move-Item : Access to the path 'C:\Users\balach\.dnx\runtimes\temp\dnx-clr-win-x86.1.0.0-beta6' is denied. 476 | At C:\Program Files\Microsoft DNX\Dnvm\dnvm.ps1:1156 char:17 477 | + Move-Item $UnpackFolder $RuntimeFolder 478 | + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 479 | + CategoryInfo : WriteError: (C:\Users\balach...x86.1.0.0-beta6:DirectoryInfo) [Move-Item], IOException 480 | + FullyQualifiedErrorId : MoveDirectoryItemIOError,Microsoft.PowerShell.Commands.MoveItemCommand 481 | 482 | Cannot find dnx-clr-win-x86.1.0.0-beta6, do you need to run 'dnvm install 1.0.0-beta6'? 483 | At C:\Program Files\Microsoft DNX\Dnvm\dnvm.ps1:1268 char:9 484 | + throw "Cannot find $runtimeFullName, do you need to run '$Com ... 485 | + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 486 | + CategoryInfo : OperationStopped: (Cannot find dnx...l 1.0.0-beta6'?:String) [], RuntimeException 487 | + FullyQualifiedErrorId : Cannot find dnx-clr-win-x86.1.0.0-beta6, do you need to run 'dnvm install 1.0.0-beta6'? 488 | 489 | Installing to C:\Users\balach\.dnx\runtimes\dnx-coreclr-win-x86.1.0.0-beta6 490 | Adding C:\Users\balach\.dnx\runtimes\dnx-coreclr-win-x86.1.0.0-beta6\bin to process PATH 491 | Compiling native images for dnx-coreclr-win-x86.1.0.0-beta6 to improve startup performance... 492 | ``` 493 | 494 | **Workaround** 495 | 496 | Restart Visual Studio and try creating the project again. DNVM should succeed this time. 497 | 498 | #### For a project targeting only CoreCLR (dnxcore50), you could run into a failure during Publish 499 | 500 | If you update your ASP.NET 5 web project to target only CoreCLR (only dnxcore50 in project.json), you might run into the following failure when you try to Publish with the default Publish settings. 501 | 502 | ``` 503 | The "Dnu" task failed unexpectedly. 504 | The project being published does not support the runtime 'dnx-clr-win-x86.1.0.0-beta6' 505 | ``` 506 | 507 | **Workaround** 508 | 509 | In the Settings tab of the Publish dialog, explicitly select dnx-coreclr as the target rather than using the 'Default'. See the image below. 510 | 511 | ![visual-studio-publish-dialog-dnx-selector](./images/beta6-pub-dnx.png) 512 | 513 | ## ASP.NET Beta5 / Visual Studio 2015 RTM 514 | 515 | ## Visual Studio 2015 RC 516 | 517 | #### applicationHost.config file appears as an untracked file in Solution 518 | 519 | The applicationHost.config file will sometimes appear as an untracked file in Solution Explorer. This file should not be checked in as it has user specific paths which will not work in team environments. 520 | 521 | #### Removing dnx451 from project.json frameworks may lead to erroneous build errors for ASP.NET 5 Web Sites projects 522 | 523 | If you remove the dnx451 value from the frameworks section in project.json for ASP.NET 5 Web Site projects you may receive an error similar to "The type or namespace name 'AspNet' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)". To work around this you can remove the file at Compiler\Preprocess\RazorPreCompilation.cs. 524 | 525 | #### Unable to add a reference to a standard C# project (.csproj) from an ASP.NET 5 project which is missing global.json 526 | 527 | If you are working in a solution with ASP.NET 5 projects that does not have a global.json file you may not be able to add a reference to a standard C# project (.csproj) from an ASP.NET 5 project. 528 | 529 | #### Installing dnvm x64 CoreClr without installing the corresponding x86 version may cause errors 530 | 531 | If you install an x64 CoreClr version of dnvm and use that as the default then you may get error message like "Cannot find the DNX runtime '' … ". To work around this install the corresponding x86 version as well. 532 | 533 | #### Publishing using Web Express may incorrectly report a failed status 534 | 535 | When publishing using Visual Studio 2015 Web Express you may receive an error like "The InstallDir property does not exist in the path HKEY_LOCAL_MACHINE\SOFTWARE\ Wow6432Node\Microsoft\VisualStudio\14.0." Even though this error is reported in most cases the site is actually published. 536 | 537 | #### IntelliSense for version in bower.json may not work on localized builds 538 | 539 | If you are using a localized version of Visual Studio 2015 IntelliSense for version of bower packages may not work in bower.json. 540 | -------------------------------------------------------------------------------- /known-issues-vs2017-preview.md: -------------------------------------------------------------------------------- 1 | 2 | # Known issues for .NET Core 2.0, ASP.NET Core 2.0, and ASP.NET and Web Tools in the Visual Studio 2017 "Preview" channel 3 | 4 | **This page is not currently active. The most recent release of Visual Studio 2017 is the [stable 15.3 Update](https://aka.ms/vs153announce), known issues for stable versions of Visual Studio are tracked on the [Known issues for .NET Core, ASP.NET Core, and ASP.NET and Web Tools in Visual Studio 2017 page](https://github.com/aspnet/Tooling/blob/master/known-issues-vs2017.md)** 5 | 6 | This page is specifically for issues with the .NET Core and ASP.NET Core 2.0 Previews, and the Visual Studio 2017 Preview. For issues with Visual Studio 2017, or .NET Core/ASP.NET Core 1.x see our [Visual Studio 2017 Known Issues page](known-issues-vs2017.md). If you encounter any issues not already captured, you can report them using the Report a Problem tool on our [Developer Community](https://developercommunity.visualstudio.com/) site, where you can track the status and see issues reported by others as well. 7 | 8 | ## .NET Core Known Issues 9 | 10 | ### Dependencies node in solution explorer shows with a warning icon until restore is complete 11 | 12 | * #### Issue: 13 | When you create or open an existing .NET Core or ASP.NET Core project using Visual Studio 2017, the dependencies node shows warnings until all packages are restored and intellisense is ready. See [this issue](https://github.com/dotnet/project-system/issues/2079) for details. 14 | 15 | ![image](https://cloud.githubusercontent.com/assets/8246794/25904231/78210626-3553-11e7-8259-02d4239fb79c.png) 16 | 17 | * #### Workaround: 18 | Simply wait for package restore to complete and the warnings will go away 19 | 20 | ### Duplicate NuGet warning when a .NET Framework package is installed to a .NET Core 2.0 project 21 | 22 | * #### Issue: 23 | If you try to install a .NET Framework package to a .NET Core 2.0 or .NET Standard 2.0 project, you get a compatibility warning from NuGet. On subsequent build, there is a duplicate warning that is shown to the user that is essentially the same warning as the first one. 24 | 25 | * #### Workaround: 26 | No workaround available. The warning is a genuine one but the duplicate warning is a known issue that will be fixed in the next release. If you do not wish to see this warning on your project, you can suppress the warning – NU1701 from Build properties, as shown in image below. 27 | 28 | ![image](https://user-images.githubusercontent.com/12700391/27713144-fe65be4a-5cde-11e7-82ee-6f7691809411.jpg) 29 | 30 | ### Missing NuGet node and package icons 31 | 32 | * #### Issue: 33 | Users with High DPI monitors may observe missing NuGet icons 34 | 35 | ![image](https://cloud.githubusercontent.com/assets/8246794/26131110/daa49c9c-3a4c-11e7-956d-499a2bc22c38.png) 36 | 37 | * #### Workaround: 38 | You can resolve this by installing the [15.3.0 Preview 3 update to VS 2017](https://www.visualstudio.com/en-us/news/releasenotes/vs2017-preview-relnotes). 39 | 40 | ### Inconsistent build behavior in certain scenarios between Visual Studio and dotnet CLI 41 | 42 | * #### Issue: 43 | You see inconsistent build behavior between CLI and VS for projects that explicitly define PackageTargetFallback element in csproj file. CLI build fails with errors and VS build doesn’t. 44 | 45 | * #### Workaround: 46 | We will fix this in the next release. Until then please find and replace PackageTargetFallback with AssetTargetFallback in csproj file. 47 | 48 | ### Live Unit Testing option to start on solution load doesn't work for .NET Core projects 49 | 50 | * #### Issue: 51 | If you enable "Start Live Unit Testing on solution load", which is an option available in Tools/Options/Live Unit Testing, it doesn't work. 52 | 53 | * #### Workaround: 54 | No workaround available. You have to manually start Live Unit Testing after the solution loads. We will fix this in the next release. 55 | 56 | ### F# templates are not present in Visual Studio IDE 57 | 58 | * #### Issue: 59 | F# templates are not present in VS IDE. We will fix this in the next release. You can use dotnet CLI to create F# projects. However there is an issue with F# MVC projects, where you will see a compilation failure. 60 | 61 | * #### Workaround: 62 | We have fixed the compilation failure in a newer .NET Core SDK build. You can install the latest daily build of the .NET Core SDK from https://github.com/dotnet/cli/tree/release/2.0.0-preview2#build-status by choosing the appropriate package from the Installers and Binaries table. 63 | 64 | ## ASP.NET Core 2.0 and Web Tools Known Issues 65 | 66 | ### Warning in the error list that Microsoft.Composition 1.0.27 was restored in a way that may cause compatibility problems 67 | 68 | * #### Issue: 69 | When you create a new ASP.NET Core 2.0 project using the Web Application template with 'Individual User Accounts' authentication, or when you use scaffolding to add Minimal Dependencies to an ASP.NET Core 2.0 project created using the Empty template, you get a warning in the error list about Microsoft.Composition 1.0.27 getting restored in a way that may cause compatibility problems. 70 | 71 | The package Microsoft.VisualStudio.Web.CodeGeneration.Design depends on Microsoft.CodeAnalysis.Workspaces, which in turn 72 | depends on the Microsoft.Composition v 1.0.27 which causes this incompatibility warning. 73 | 74 | ![image](https://user-images.githubusercontent.com/8246794/27614916-6842fe7c-5b59-11e7-9e6c-3e3fed1a5874.png) 75 | 76 | * #### Workaround: 77 | None. The warning is benign and can be ignored. 78 | 79 | ### When you drag a file out of wwwroot to the project root, you get error 'Failed to update the project tree' 80 | 81 | * #### Issue: 82 | In Solution Explorer of an ASP.NET Core project, when you drag an html file (or other file) out of wwwroot to the project root, you get the following error 83 | 84 | --------------------------- 85 | Microsoft Visual Studio 86 | --------------------------- 87 | The project system has encountered an error. 88 |   89 | Failed to update the project tree. 90 | A diagnostic log has been written to the following location: "C:\Users\\AppData\Local\Temp\VsProjectFault_b80d13d6-ca81-4c51-b349-5b1a2af1639f.failure.txt". 91 | --------------------------- 92 | OK   93 | --------------------------- 94 | 95 | 96 | * #### Workaround: 97 | Close and re-open the solution. To avoid this issue, use Windows File Explorer to move this item instead of Solution Explorer. 98 | 99 | 100 | 101 | ### When you create a new ASP.NET Core 2.0 project using the Angular template, there is a warning in Dependencies node 102 | 103 | * #### Issue: 104 | When you create a new ASP.NET Core 2.0 project using the Angular template, there is a warning in Dependencies node that does not go away for a long time, until the npm packages are fully installed 105 | 106 | ![image](https://user-images.githubusercontent.com/8246794/27614995-f6e2d238-5b59-11e7-8d7a-30e53ce43ce5.png) 107 | 108 | * #### Workaround: 109 | Wait until npm packages are fully installed. You can view progress in the 'Bower/npm' pane of the Output Window 110 | 111 | 112 | ### Certificate error when trying to apply EF migrations or using code generation 113 | 114 | * #### Issue: 115 | When trying to apply EF migrations or when using code generation to scaffold code in an ASP.NET Core 2.0 application, you get error: 116 | 'No certificate named 'HTTPS' found in configuration for the current environment (Production). 117 | 118 | ![image](https://cloud.githubusercontent.com/assets/8246794/25904334/ce13d6e4-3553-11e7-86ad-445eace7a5a2.png) 119 | 120 | * #### Workaround: 121 | You can resolve this by installing [ASP.NET Core 2.0 Preview 2](https://blogs.msdn.microsoft.com/webdev/2017/06/28/introducing-asp-net-core-2-0-preview-2/) 122 | 123 | ### Cannot resolve scoped service error when trying to apply EF migrations or during code generation using existing DbContext 124 | 125 | * #### Issue: 126 | When trying to apply EF migrations at design-time or during a publish, or during code generation, you see an error such as: Cannot resolve scoped service 'WebApplication2.Identity.Data.IdentityServiceDbContext' from root provider – even when ASPNETCORE_ENVIRONMENT is set to Development. 127 | 128 | ![image](https://cloud.githubusercontent.com/assets/8246794/25904483/322f06d0-3554-11e7-980e-2217c8339a03.png) 129 | 130 | OR 131 | 132 | ![image](https://cloud.githubusercontent.com/assets/8246794/25904493/3967f4a2-3554-11e7-938d-00a9545238ff.png) 133 | 134 | * #### Workaround: 135 | You can resolve this by installing [ASP.NET Core 2.0 Preview 2](https://blogs.msdn.microsoft.com/webdev/2017/06/28/introducing-asp-net-core-2-0-preview-2/) 136 | 137 | 138 | ### Add-Migration command fails with Exception calling "Substring" 139 | 140 | * #### Issue: 141 | In an ASP.NET Core 2.0 project, when trying to use the NuGet Package Manager Console to add migrations using Add-Migration cmdlet or Update-Database, you get the following error : 142 | ``` 143 | Add-Migration : Exception calling "Substring" with "1" argument(s): "StartIndex cannot be less than zero. 144 | Parameter name: startIndex" 145 | ``` 146 | 147 | 148 | ![image](https://cloud.githubusercontent.com/assets/8246794/25904679/c8bfd458-3554-11e7-8ba3-76bc79b559db.png) 149 | 150 | * #### Workaround: 151 | You can resolve this by installing [ASP.NET Core 2.0 Preview 2](https://blogs.msdn.microsoft.com/webdev/2017/06/28/introducing-asp-net-core-2-0-preview-2/) 152 | 153 | ### After re-targeting ASP.NET Core 1.1 application to 2.0, you get package downgrade warnings related to BrowserLink 154 | 155 | * #### Issue: 156 | When you re-target your existing ASP.NET Core 1.1 application to ASP.NET Core 2.0, you might run into the many package downgrade warnings of the form. When you F5, the page fails to load with a HTTP Error 502.3 - Bad Gateway. 157 | ``` 158 | Detected package downgrade: System.Net.Sockets from 4.3.0 to 4.1.0 WebApp_Anc11_core_NoAuth_1 (>= 1.0.0) -> Microsoft.VisualStudio.Web.BrowserLink (>= 1.1.0) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 1.1.0) -> NETStandard.Library (>= 1.6.1) -> System.Net.Sockets (>= 4.3.0) WebApp_Anc11_core_NoAuth_1 (>= 1.0.0) -> Microsoft.VisualStudio.Web.BrowserLink (>= 1.1.0) -> System.Net.Sockets (>= 4.1.0) 159 | ``` 160 | 161 | * #### Workaround: 162 | You can resolve this by installing [ASP.NET Core 2.0 Preview 2](https://blogs.msdn.microsoft.com/webdev/2017/06/28/introducing-asp-net-core-2-0-preview-2/) 163 | 164 | 165 | ## ASP.NET Core 1 and Web Tools Known Issues 166 | 167 | ### After installing update to Visual Studio and publishing a ASP.NET Core 1.1 application, you get a HTTP Error 502.5 on the published application 168 | 169 | * #### Issue: 170 | Visual Studio 2017 (version 15.3) Preview installs the .NET Core 1.1.2 runtime. When you build and publish ASP.NET Core 1.1 application using this version of Visual Studio, the application is built against the 1.1.2 runtime. If the web server does not have the 1.1.2 runtime, then you get HTTP Error 502.5 171 | 172 | * #### Workaround: 173 | Install the 1.1.2 runtime on the web server 174 | 175 | ### After opening ASP.NET Core 1.1 solution, you see warnings in Dependencies node in Solution Explorer 176 | 177 | * #### Issue: 178 | When you open a pre-built ASP.NET Core 1.1 application after installing the latest update to Visual Studio, you might run into the following issue where you see warnings in Dependencies node in Solution Explorer. The warnings do not go away even after restore completes. 179 | 180 | * #### Workaround: 181 | Close and re-open the solution. The warnings should go away. 182 | 183 | ### Bower packages are not automatically restored after adding full dependencies to an ASP.NET Core 1.1 application created using Empty template 184 | 185 | * #### Issue: 186 | If you try to add full dependencies to an ASP.NET Core 1.1 application created using Empty template, the warning sign doesn't go away from dependencies node for Bower packages 187 | 188 | ![image](https://cloud.githubusercontent.com/assets/8246794/25910188/6d4339d4-3564-11e7-901d-f85ee0117467.png) 189 | 190 | * #### Workaround: 191 | Right-click Bower node and restore packages 192 | 193 | 194 | -------------------------------------------------------------------------------- /known-issues-vs2017.md: -------------------------------------------------------------------------------- 1 | # Known issues for .NET Core, ASP.NET Core, and ASP.NET and Web Tools in Visual Studio 2017 2 | 3 | If you encounter any issues with VS 2017 not already listed below, you can report them using the Report a Problem tool on our [Developer Community](https://developercommunity.visualstudio.com/) site, where you can track the status and see issues reported by others as well. 4 | 5 | If you encounter a problem with Visual Studio, we want to know about it so that we can diagnose and fix it. By using the Report a Problem tool, you can collect detailed information about the problem, and send it to Microsoft with just a few button clicks. See [Visual Studio’s Talk to Us page](https://docs.microsoft.com/en-us/visualstudio/ide/talk-to-us) for more details. The GitHub Issue Tracker for the aspnet/Tooling repo is now deprecated in favor of the Report a Problem tool. 6 | 7 | ## .NET Core Known Issues 8 | For known issues with .NET Core, use the following links to see the issues in the .NET Core GitHub repo the team is tracking including comments and status. 9 | 10 | * [Migration from project.json/xproj to csproj](https://github.com/dotnet/cli/issues?q=is%3Aissue+label%3Amigration+is%3Aopen) 11 | * [.NET Core SDK](https://github.com/dotnet/sdk/issues?q=is%3Aissue+label%3ABug+is%3Aopen) & [CLI](https://github.com/dotnet/cli/issues?q=is%3Aissue+label%3Abug+is%3Aopen) 12 | * [MSBuild](https://github.com/Microsoft/msbuild/issues?q=is%3Aissue+label%3Abug+is%3Aopen) 13 | * [IDE/Project System](https://github.com/dotnet/roslyn-project-system/issues?q=is%3Aissue+label%3ABug+is%3Aopen) 14 | * [NuGet](https://github.com/NuGet/Home/issues?q=is%3Aissue+label%3AType%3ABug+is%3Aopen) 15 | 16 | ### Publishing a project with a reference can sometimes result in the referenced project getting published with the wrong configuration 17 | 18 | * #### Issue: 19 | For a .NET Core Console project with a project reference to a Core / NET Standard Class Lib, if we publish the console app in release configuration, the class lib assembly will be published with Debug configuration instead. The console assembly will be in Release configuration as expected. 20 | 21 | * #### Workaround: 22 | 23 | ### Publish .NET Core Console applications / class libraries 24 | 25 | * #### Issue: 26 | If the TargetFramework is set to net45x and RuntimeIdentifiers is set to win7-x64, the published output produces an executable with the wrong bitness. 27 | 28 | * #### Workaround: 29 | 30 | ### 'Target Runtime' dropdown shows "Portable" 31 | 32 | * #### Issue: 33 | If the RuntimeIdentifier element is set in the project file, the "Target Runtime" dropdown in the window that appears when the "Settings" link under "Summary" will not pick up that RuntimeIdentifier and will instead show "Portable". 34 | 35 | * #### Workaround: 36 | Set the "RuntimeIdentifiers" element in the project file so the dropdown can pick up the Runtime Identifiers. 37 | 38 | ### Core Console/Class library publish dialog not showing the right RID's 39 | 40 | * #### Issue: 41 | Core Console/Class lib Publish Profile Settings Dialog shows only Portable RID when the user wants to add a RID by adding a RuntimeIdentifier element in the project file 42 | 43 | * #### Workaround: 44 | Only add one runtime identifier to the project, by changig the RuntimeIdentifier element, to a RuntimeIdentifiers element, for example: 45 | 46 | ```XML 47 | win7-x86 48 | ``` 49 | 50 | ## ASP.NET and Web Tools Known Issues 51 | 52 | ### When trying to publish to Azure, unable to create App Service for a project with _ in the project name 53 | 54 | * #### Issue: 55 | When trying to publish a project with _ in the project name to Azure, the App Name text box of the Create App Service dialog can give a validation error: "Could not verify name availability, please try again" 56 | 57 | ![image](https://user-images.githubusercontent.com/8246794/29236912-f6e4a39c-7ec7-11e7-9321-6a124fd6dcdd.png) 58 | 59 | * #### Workaround: 60 | Remove _ from the App Name text box 61 | 62 | ### MVC4 projects do not connect to SQL Server LocalDB at runtime 63 | 64 | * #### Issue: 65 | When running an MVC4 project in Visual Studio, database access by the application may fail if it is using SQL Server Express LocalDB 2012. This is caused because MVC4 projects by default depend on SQL Server Express LocalDB 2012 which is not installed with Visual Studio 2017. 66 | 67 | * #### Workaround: 68 | Upgrade the project to use SQL Server Express LocalDB 2016, or manually download and install [SQL Server Express LocalDB 2012](https://go.microsoft.com/fwlink/?LinkID=627336) on the machine. 69 | 70 | ### Remote profiling to Azure App Service does not work 71 | 72 | * #### Issue: 73 | Remote profiling to Azure App Service from Cloud Explorer or Server Explorer displays the error "Cannot access a disposed error". 74 | 75 | * #### Workaround: 76 | Use Visual Studio 2015 to profile, Azure App Services does not yet support profiling from Visual Studio 2017. 77 | 78 | ### To create ASP.NET Core 1.0 / 1.1 projects install Visual Studio's ".NET Core 1.0 - 1.1 developer tools for Web" component 79 | 80 | * #### Issue: 81 | Creating a new ASP.NET Core Web Application based on ASP.NET Core 1.0 or 1.1 is blocked (the OK button is disabled) and displays the message "To create ASP.NET Core 1.0/1.1 projects you need to install Visual Studio's '.NET Core 1.0 - 1.1 developer tools for Web' compomnent." 82 | 83 | * #### Workaround: 84 | Use Visual Studio Installer to install the missing Visual Studio component ".NET Core 1.0 - 1.1 developer tools for Web". 85 | 86 | ## ASP.NET Core Known Issues 87 | 88 | ### Re-targeting ASP.NET Core 1.0 or 1.1 application to ASP.NET Core 2.0 will require additional steps by the user 89 | 90 | * #### Issue: 91 | After you change target of an existing ASP.NET Core 1.0 or 1.1 application to 2.0, you might get incompatibility errors. Here are some symptoms of issues you might see: 92 | 93 | Build warning: 94 | ``` 95 | Package 'Microsoft.Composition 1.0.27' was restored using '.NETFramework,Version=v4.6.1' instead of the project target framework '.NETCoreApp,Version=v2.0'. This package may not be fully compatible with your project. 96 | ``` 97 | 98 | Error when you run the project: 99 | ``` 100 | An unhandled exception occurred while processing the request. 101 | InvalidOperationException: Can not find compilation library location for package 'Microsoft.NETCore.App' 102 | Microsoft.Extensions.DependencyModel.CompilationLibrary.ResolveReferencePaths() 103 | ``` 104 | 105 | Build Errors 106 | ``` 107 | error NU1605: Detected package downgrade: System.Diagnostics.Tools from 4.3.0 to 4.0.1. Reference the package directly from the project to select a different version. 108 | error NU1605: WebApplication1 (>= 1.0.0) -> Microsoft.VisualStudio.Web.BrowserLink (>= 1.1.2) -> Microsoft.AspNetCore.Hosting.Abstractions (>= 1.1.2) -> NETStandard.Library (>= 1.6.1) -> System.Diagnostics.Tools (>= 4.3.0) 109 | ``` 110 | 111 | * #### Workaround: 112 | You will need to do additional steps to fully migrate your project to 2.0. See following documentation for additional details: 113 | 114 | [Migrating from ASP.NET Core 1.x to ASP.NET Core 2.0](https://docs.microsoft.com/en-us/aspnet/core/migration/1x-to-2x/) 115 | 116 | [Migrating Authentication and Identity to ASP.NET Core 2.0](https://docs.microsoft.com/en-us/aspnet/core/migration/1x-to-2x/identity-2x) 117 | 118 | 119 | ### PackageManagerConsole EF Core commands like Add-Migration commands fail when a restore is in progress 120 | 121 | * #### Issue: 122 | When a package restore is in progress, if you try to run one of the EntityFrameworkCore commands like Add-Migration and Update-Database using the Package Manager Console, it may fail with the following error 123 | 124 | ``` 125 | Update-Database : The term 'Update-Database' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was 126 | included, verify that the path is correct and try again. 127 | ``` 128 | 129 | * #### Workaround: 130 | Wait until package restore completes and try again 131 | 132 | ### Edit and continue dialog pops up twice when debugging a Razor view 133 | 134 | * #### Issue: 135 | When debugging a Razor view and / or hitting an exception in a Razor view the edit/continue dialog pops up in VisualStudio. If you click edit => f5, you will get the same prompt again. 136 | 137 | * #### Workaround: 138 | Hit edit => close the Razor editor => f5. 139 | 140 | 141 | ### When running dotnet aspnet-codegenerator from a command prompt, you run into an unhandled InvalidOperationException 142 | 143 | * #### Issue: 144 | When you try to invoke dotnet aspnet-codegenerator after creating a new ASP.NET Core application using the command-line, you get an unhandled InvalidOperationException that mentions that Microsoft.VisualStudio.Web.CodeGeneration.Design package needs to be added as a NuGet package reference 145 | 146 | Example: 147 | ``` 148 | dotnet new mvc 149 | dotnet aspnet-codegenerator 150 | ``` 151 | ![image](https://user-images.githubusercontent.com/8246794/29236917-1136782e-7ec8-11e7-9846-de28eba73253.png) 152 | 153 | * #### Workaround: 154 | Add the missing package reference in your csproj file, and then run 'dotnet restore' 155 | 156 | ``` 157 | 158 | ``` 159 | 160 | ### EntityFramework migrations not available to be applied during publish 161 | 162 | * #### Issue: 163 | Publish settings dialog for ASP.NET core web applications on .NET framework sometimes shows the EF migration section as empty when IIS express is running. This is because the files are locked and EF is not able to detect the dbcontexts for the project. 164 | 165 | * #### Workaround: 166 | Exit the Publish dialog, do a VS build and re-open the publish settings dialog. 167 | 168 | ### Creating ASP.NET Core Web Application on .NET Framework may not work offline 169 | 170 | * #### Issue: 171 | When creating a ASP.NET Core Web Application on .NET Framework without an internet connection, project creation may fail with the following package restore error due to missing ManagedEsent package 172 | 173 | ![image](https://user-images.githubusercontent.com/8246794/29236922-2b94bda2-7ec8-11e7-80fc-3db977d1dcb8.png) 174 | 175 | * #### Workaround: 176 | Connect to the internet and run Restore Packages on the solution 177 | 178 | 179 | ### After installing update to Visual Studio and publishing a ASP.NET Core 1.1 application, you get a HTTP Error 502.5 on the published application 180 | 181 | * #### Issue: 182 | Visual Studio 2017 (version 15.2) installs the .NET Core 1.1.2 runtime. When you build and publish ASP.NET Core 1.1 application using this version of Visual Studio, the application is built against the 1.1.2 runtime. If the web server does not have the 1.1.2 runtime, then you get HTTP Error 502.5 183 | 184 | * #### Workaround: 185 | Install the 1.1.2 runtime on the web server 186 | 187 | ### Tag Helpers do not work 188 | 189 | * #### Issue: 190 | Razor Tag Helpers do not get colorization or special IntelliSense at design time.  They work normally at runtime. 191 | 192 | * #### Workaround: 193 | Update VS 2017 to version 15.3 194 | 195 | ### No suggestions to install missing packages 196 | 197 | * #### Issue: 198 | Pressing Ctrl+. on unresolved references to extension methods does not provide a lightbulb with helpful shortcuts to install the required package 199 | 200 | * #### Workaround: 201 | Manually find and install the package using Manage NuGet packages UI 202 | 203 | ### NuGet Recommends Upgrading Packages in 1.0 / 1.1 app to 2.0 versions 204 | 205 | * #### Issue: 206 | If your application is targeting ASP.NET Core 1.0 or 1.1 and you try to add NuGet packages using Manage NuGet Packages dialog or the Package Manager Console tool window, it defaults to installing the 2.0 version of the packages causing undesirable behavior in some cases. 207 | 208 | * #### Workaround: 209 | Update the version of the packages to 1.0.x / 1.1.x 210 | 211 | ### .NET Core project containing node_modules cause VS to hang 212 | 213 | * #### Issue: 214 | Visual Studio becomes unresponsive when working on .NET Core projects that contain node_modules. 215 | 216 | * #### Workaround: 217 | Do npm restore while the project or VS is closed, and then reopen the solution/project. 218 | 219 | 220 | ### Publishing project with Entity Framework migration fails 221 | 222 | * #### Issue: 223 | Publishing a project with Entity Framework migrations fails if the DB context is not in the project that is getting published. 224 | 225 | * #### Workaround: 226 | Add the following to the pubxml or csproj & fill in the DBContextName, ConnectionString, and PathToCsProjContainingDBContext 227 | ```xml 228 |   229 |     230 | 231 |       true 232 |       $(PublishIntermediateTempPath)\GeneratedSqlFile.sql 233 |       234 | 235 | 236 |     237 |     238 | 241 |         $(DBContextName) 242 |         $(ConnectionString) 243 |         ^$([System.Text.RegularExpressions.Regex]::Escape($(SqlFilePath)))$ 244 |       245 |     246 |   247 | ``` 248 | 249 | ### Publish settings dialog does not show RuntimeIdentifier dropdown 250 | 251 | * #### Issue: 252 | Publish settings dialog for non-portable ASP.NET Core web apps does not show the RuntimeIdentifier dropdown. 253 | 254 | * #### Workaround: 255 | To work around this, set the RuntimeIdentifier property in the csproj. 256 | 257 | ```xml 258 | 259 | 260 | ``` item group with a exclude pattern, and the files generated by scaffolding match the pattern, they are not included in the project. For example: If a project has `````` and scaffolding generates a file in 'DefaultController.cs' ExcludedDir, it will not be included in the project for compilation. 283 | 284 | * #### Workaround: 285 | Manually adjust the globbing pattern to include the 'ExcludedDir/DefaultController' 286 | 287 | ### Ambiguity error during scaffolding controller with Entity Framework 288 | 289 | * #### Issue: 290 | If the DataContext class has a member (property, method, variable) defined with the same name as the Model class being used for scaffolding fails with an error as below:
291 | ![amiguity error dialog](./images/vs2017-ambiguity-error.png) 292 | 293 | * #### Workaround: 294 | Add a DbSet<> property to the DataContext class for the model which will be used for scaffolding manually and then retry scaffolding 295 | `public DbSet MemberName { get; set; }` 296 | 297 | ### Project with Docker support does not run in IIS Express 298 | 299 | * #### Issue: 300 | When creating a Docker project and running the project in the "IIS Express" configuration, the website cannot be opened and the status is always loading. 301 | 302 | * #### Workaround: 303 | To work around this, add .UseIISIntegration() to Program.cs: 304 | 305 | ``` 306 | var host = new WebHostBuilder() 307 | .UseKestrel() 308 | .UseContentRoot(Directory.GetCurrentDirectory()) 309 | .UseIISIntegration() 310 | .UseStartup() 311 | .UseApplicationInsights() 312 | .Build(); 313 | ``` 314 | 315 | ### Docker enabled project fails to build 316 | 317 | * #### Issue: 318 | When creating an ASP.NET Core project, if you check the "Enable Container (Docker) Support" checkbox but do not have "Docker for Windows" installed, the created project will fail to build with the following error: 319 | 320 | Microsoft.DotNet.Docker.CommandLineClientException: 'docker-compose' was not found. Please verify that it is available on %PATH%, or for troubleshooting, follow instructions from http://aka.ms/DockerToolsTroubleshooting 321 | 322 | * #### Workaround: 323 | Install [Docker for Windows](https://docs.docker.com/docker-for-windows/) to resolve the issue 324 | 325 | ### TypeScript files do not compile 326 | 327 | * #### Issue: 328 | TypeScript files are not automatically compiled on save in .NET Core projects 329 | 330 | * #### Workaround: 331 | Add a tsconfig.json file to the root of the project, containing at least {}. 332 | 333 | ### Sequence numbers added to wrong item templates 334 | 335 | * #### Issue: 336 | In Core projects, item templates such as "npm Configuration File", "Bower Configuration File", "Grunt/Gulp Configuration File", etc., which work only with specific names, are created with an extra "1" inserted before the end of the file name. 337 | 338 | * #### Workaround: 339 | Edit the supplied file name before or after creating the file. 340 | -------------------------------------------------------------------------------- /missing-template.md: -------------------------------------------------------------------------------- 1 | 2 | When creating projects from the command line using `dotnet new`, you may run into the following error. 3 | 4 | ``` 5 | dotnet new web -f netcoreapp1.1 6 | Error: Invalid parameter(s): 7 | -f netcoreapp1.1 8 | 'netcoreapp1.1' is not a valid value for -f (Framework). 9 | Run dotnet new web --help for usage information. 10 | See https://aka.ms/dotnet-install-templates to learn how to install additional template packs. 11 | ``` 12 | 13 | This occurs when you attempt to create a template for a framework, and the templates for that framework are not installed. For example if you install .NET Core 2.0, and try to create a `1.1` project. To resolve this you can install 14 | the 1.1 templates with one, or more, of the commands below. 15 | 16 | ### To install 1.1 web templates 17 | 18 | ``` 19 | dotnet new -i Microsoft.DotNet.Web.ProjectTemplates.1.x::1.0.0-* 20 | ``` 21 | 22 | ### To install 1.1 class library and console templates 23 | 24 | ``` 25 | dotnet new -i Microsoft.DotNet.Common.ProjectTemplates.1.x::1.0.0-* 26 | ``` 27 | 28 | ### To install 1.1 unit test templates 29 | 30 | ``` 31 | dotnet new -i Microsoft.DotNet.Test.ProjectTemplates.1.x::1.0.0-* 32 | ``` 33 | 34 | After installing the desired templates, you should be able to re-run the command to create the project. 35 | 36 | For general help see the [dotnet new docs](https://docs.microsoft.com/dotnet/articles/core/tools/dotnet-new) -------------------------------------------------------------------------------- /optimize-build-performance-for-solution.md: -------------------------------------------------------------------------------- 1 | # Optimize build performance for solution 2 | In Visual Studio 2017 15.8 we added a new menu item under Build | ASP.NET Compilation | Optimize Build Performance for Solution 3 | 4 | ![screenshot of the new menu item](optimize-build-performance-for-solution.png) 5 | 6 | ASP.NET compiles its views at runtime, which means your ASP.NET project carries with it a copy of the compiler. However, on a developer machine when the copy of the compiler doesn't match Visual Studio's copy, your build performance is impacted on the order of 1-3 seconds per incremental build. This feature will update your project's copy of the compiler to match Visual Studio's which should speed up your incremental builds. 7 | 8 | This is applicable to ASP.NET Framework projects only, it does not apply to ASP.NET Core. 9 | -------------------------------------------------------------------------------- /optimize-build-performance-for-solution.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/optimize-build-performance-for-solution.png -------------------------------------------------------------------------------- /razor-scaffolding-15.3.md: -------------------------------------------------------------------------------- 1 | Scaffolding for Razor is currently a work in progress. In 15.3 we have shipped the initial set of scaffolders with Visual Studio 2017. 2 | 3 | We have enabled some additional scenarios for command line scaffolding. For more info about how to scaffold on the command line for 4 | Razor projects please see https://docs.microsoft.com/en-us/aspnet/core/tutorials/razor-pages/model. 5 | 6 | Over time we will be adding additional support into Visual Studio 2017 for Razor scaffolding. -------------------------------------------------------------------------------- /release-notes.md: -------------------------------------------------------------------------------- 1 | ## Release notes for .NET Core 1.0.1 – VS 2015 Tooling Preview 2 2 | 3 | To get an overview of this release https://blogs.msdn.microsoft.com/webdev/2016/09/13/asp-net-core-sept-2016-patch/. 4 | 5 | This release contains the following. 6 | 7 | ### RTM tooling for ASP.NET (ASP.NET, not including ASP.NET Core) 8 | This release contains RTM quality support for ASP.NET. 9 | 10 | ### Preview 2 tooling for .NET Core and ASP.NET Core 11 | 12 | This release contains Preview 2 tooling for .NET Core and ASP.NET Core. 13 | 14 | ### Runtime packages updated to 1.0.1 15 | 16 | In the previous release the .NET Core packages used version `1.0.0`. To update your existing projects you can update package references from `1.0.0` to `1.0.1`. See the related security advisory at https://github.com/aspnet/Announcements/issues/203. 17 | 18 | ### Updated ASP.NET Core templates to ensure Views in Areas are published 19 | 20 | In the previous release if you added an Area to an ASP.NET Core project when the project is published the views under the areas may not be published. This is caused by an incomplete entry in the `project.json` file. The fix for this is to update the `project.json` file. See https://github.com/aspnet/Templates/issues/654 for more details. For new projects created with Preview 2, `project.json` contains the complete entry. 21 | 22 | ## Release notes for .NET Core 1.0.0 - VS 2015 Tooling Preview 2 23 | 24 | You can read more about this release at https://blogs.msdn.microsoft.com/webdev/2016/06/27/announcing-asp-net-core-1-0/ 25 | 26 | This release contains the following 27 | 28 | ### Web tooling updates for ASP.NET as well as Preview 2 tooling for Microsoft .NET Core 1.0.0 29 | 30 | This release contains the latest tools to build great ASP.NET applications. It also contains Preview 2 tooling for Microsoft .NET Core 1.0.0. 31 | 32 | ### Template updates 33 | 34 | - **Default auth switched to No Auth**: In previous versions Individual Auth was the default authentication option. We have changed this to No Auth to simplify the default project contents. 35 | - **BundlerMinifier included**: In previous versions we were relying on gulp to bundle and minify client side content. We have changed this to use BundlerMinifier to simplify the default project contents and decrease the dependencies. 36 | 37 | ### FTP Publish support included 38 | 39 | In this release we have added support to publish to FTP endpoints using the Visual Studio Publish Web dialog. 40 | 41 | ### Cumulative updates 42 | 43 | Since our initial release on 6/27/2016, we have released cumulative updates as listed below. 44 | 45 | #### [7/20/2016] Cumulative servicing update for Visual Studio 2015 Update 3 46 | 47 | If you obtain [cumulative servicing update](https://msdn.microsoft.com/en-us/library/mt752379.aspx) that provides fixes to Visual Studio 2015 Update 3, you will benefit from the resolution of the following two issues: 48 | * In ASP.NET cshtml files, committing code completion after you type the full snippet may cause incorrect snippets to be added to the source file. 49 | * An issue that affects inspecting local variables for code that's embedded in cshtml files occurs in ASP.NET Core applications. 50 | 51 | #### [8/11/2016] Tooling update for .NET Core 1.0.0 - VS 2015 Tooling Preview 2 52 | 53 | We fixed a few key customer issues as listed below to improve the development experience of .NET Core. This update can be downloaded and installed from [here](https://go.microsoft.com/fwlink/?LinkId=817245) and is a cumulative update that contains Preview 2 tooling plus targeted bug fixes listed below. 54 | 55 | Please note that this is only an update to the Visual Studio tooling - runtime pieces of .NET Core as well as components of .NET Core 1.0.0 SDK are the same as what they were before. 56 | 57 | Fixes in this update include the following: 58 | * Some customers were blocked from installing the Preview 2 installer with a message that Visual Studio 2015 Update 3 may not be completely installed. To work-around it, one had to run the installer from the command-line with the SKIP_VSU_CHECK=1 argument. This workaround is not needed anymore, and this updated Preview 2 installer will now install correctly on top of Visual Studio 2015 Update 3. 59 | * Fix for a bug that sometimes caused crashes in Visual Studio 2015 Update 3 (`CLR_EXCEPTION_System.NullReferenceException_80004003_Microsoft.VisualStudio.Composition.dll!Microsoft.VisualStudio.Composition.ExportProvider+PartLifecycleTracker.ReportPartiallyInitializedImport`) 60 | * Fix for a [bug](https://github.com/aspnet/Tooling/issues/647) that sometimes caused .xproj to be repeatedly built with the message `(project) will be compiled because inputs were modified`. 61 | 62 | ## Release notes for .NET Core 1.0.0 RC2 – VS 2015 Tooling Preview 1 63 | 64 | You can read more about this release at https://blogs.msdn.microsoft.com/webdev/2016/05/16/announcing-asp-net-core-rc2 65 | 66 | This release contains the following. 67 | 68 | ### RTM tooling for ASP.NET (ASP.NET, not including ASP.NET Core) 69 | 70 | This release contains RTM quality support for ASP.NET. 71 | 72 | ### Preview 1 tooling for .NET Core and ASP.NET Core 73 | 74 | This release contains Preview 1 tooling for .NET Core and ASP.NET Core. We have also fixed a number of issues from previous releases. 75 | 76 | ### Support for running EF Migrations on Publish 77 | 78 | We have added support on the Web Publish dialog to execute Entity Framework Migrations during a publish using Web Deploy (aka MSDeploy). 79 | 80 | ### New Project updates 81 | 82 | The templates provided in the File->New Project dialog have been updated. We now have three template entries in the New Project Dialog related to ASP.NET. 83 | 84 | - **ASP.NET Web Application (.NET Framework)**: This opens the One ASP.NET dialog with templates for ASP.NET. Including Web Forms, MVC, Web API, etc. These templates use `System.Web` and only run on Windows. 85 | - **ASP.NET Core Web Application (.NET Core)**: This opens the One ASP.NET dialog with templates for ASP.NET Core running on .NET Core. Since these are targetting .NET Core they can be used on all platforms (Windows, Linux and OS X). 86 | - **ASP.NET Core Web Application (.NET Framework)**: This opens the One ASP.NET dialog with templates for ASP.NET Core running on .NET Framework. Since they are running on the .NET Framework, these templates will only run on Windows. You should use this if you have investments in libraries, or code, which are not compatible with .NET Core. 87 | 88 | ### Web linters 89 | 90 | With this release we are including web linters including: ESLint, CSSLint, TSLint and CoffeeLint. 91 | 92 | ### Dependency updates 93 | 94 | We have refreshed many of the packages used in the default templates provided by File -> New Project. 95 | 96 | In addition we have updated to node version 5.4.1 and npm version 3.3.4. 97 | 98 | ### Updated support for xproj projects referencing csproj projects 99 | 100 | We have updated the support for .xproj projects referencing .csproj projects. In the past we relied on a command line tool `dnu wrap`. We ran into many issues with that support and decided to re-implement it without using that command line tool. 101 | 102 | ### Links 103 | 104 | For more info see https://blogs.msdn.microsoft.com/webdev/2016/05/16/announcing-asp-net-core-rc2/. If you have any problems using the release please file an issue at https://github.com/aspnet/tooling/issues. 105 | 106 | For known issues see https://github.com/aspnet/Tooling/blob/master/known-issues.md. 107 | -------------------------------------------------------------------------------- /specs/publish-to-linux-from-vs.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/specs/publish-to-linux-from-vs.pdf -------------------------------------------------------------------------------- /specs/vs-scaffolding.pptx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/aspnet/Tooling/ae3099a0c53ed533653312cb49190c7d3a749628/specs/vs-scaffolding.pptx -------------------------------------------------------------------------------- /specs/web-publish-ef-migrations.md: -------------------------------------------------------------------------------- 1 | For ASP.NET 4 we had the ability to allow users to select a database and have Entity Framework Migrations executed. In ASP.NET 4 the migrations were executed at runtime. When selecting a DB on the publish dialog when the web app was published `web.config` was modified to execute migrations at runtime when the app starts. In EF 7 executing migrations will no longer be supported. Instead migrations will be executed during deploy time. For more details on this see the EF 7 wiki for [Visual Studio Integration](https://github.com/aspnet/EntityFramework/wiki/Visual-Studio-Publish-Integration). 2 | 3 | Below is the proposal for the experience for ASP.NET 5 projects. 4 | 5 | When a publish profile is created we will automatically start discovering the contexts available by calling `dnx ef context list` to get the list of contexts. While this is happening we should show a spinner to indicate that something is happening. See the following image. 6 | 7 | ![](./web-publish-ef-migrations/publish-dialog-settings-discovering.png) 8 | 9 | After the results have come back here is what the `DefaultConnection` entry looks like. 10 | 11 | ![](./web-publish-ef-migrations/publish-dialog-settings-discovered.png) 12 | 13 | We have the same default behavior as ASP.NET 4, updating connecting string is enabled by default but executing code first migrations must be explicitly set by the user. After the item is configured for EF migrations then it will be enabled for publish and preview. 14 | 15 | For the case that the user is publishing and there is no linked DB (or publishing to some host besides Azure Web Apps), the DB connection string will not be populated automatically. We'll have tooltips which explain each text box better. See images below. 16 | 17 | ![](./web-publish-ef-migrations/publish-dialog-settings-tooltip1.png) 18 | 19 | ![](./web-publish-ef-migrations/publish-dialog-settings-tooltip2.png) 20 | 21 | Note: on this dialog we have a refresh button that can be used to re-discover any newly added DB entry. Today for ASP.NET 4 we auto refresh this list. We have not yet settled on continuing the auto-discovery or moving to a model where users have to click refresh. We may hold off on deciding that until we can try out the experience. 22 | 23 | ![](./web-publish-ef-migrations/publish-dialog-settings-discovered-configured.png) 24 | 25 | When a user enters a connection string into any text box, it will be available for autocomplete in other connection string dropdowns. 26 | 27 | ![](./web-publish-ef-migrations/publish-dialog-settings-discovered-configured-autocomplete.png) 28 | 29 | On the preview tab we will have the same UX as we do for ASP.NET 4 projects. 30 | ![](./web-publish-ef-migrations/publish-dialog-preview.png) 31 | 32 | When the DB preview link is clicked we should show the migration script in a separate dialog like we do today. The screenshots below show the experience. We can use `dnx ef migration script -i -o` to get the script for preview. 33 | 34 | ![](./web-publish-ef-migrations/publish-dialog-db-preview.png) 35 | ![](./web-publish-ef-migrations/publish-dialog-db-preview-populated.png) 36 | 37 | 38 | ## Publish actions 39 | When `Publish` is clicked at a high level the following actions are preformed. 40 | - `config.$(TargetEnvName).json` is created if it doesn't already exist and published to the remote site during deployment. The artifact is **not** added to the project. If the file already exists then we will update/add the connection string. 41 | - Note: `$(TargetEnvName)` is the environment name that we are publishing to. The default value should be `Production`. Users should be able to customize this in the `.pubxml` file. For now we are not planning to add any UI for this, but that may change later. 42 | - Generate a migration script using `dnx ef migration script -i -o` 43 | - Publish by creating a web deploy manifest 44 | - `dbFullSql` to execute the migrations `.sql` script 45 | - `iisApp` to create the website 46 | - Create parameters for important values like connection string 47 | 48 | ## .pubxml and PowerShell 49 | 50 | We can persist the values in the `.pubxml` with a format similar to the following. 51 | 52 | 53 | ```xml 54 | 55 | 56 | config.json 57 | 58 | $(DefaultConnection_ConString) 59 | 60 | 61 | ApplicationDbContext 62 | $(ApplicationDbContext_ConString) 63 | 64 | 65 | BookContext 66 | $(BookContext_ConString) 67 | 68 | 69 | 70 | ``` 71 | 72 | When the data is passed from Visual Studio/MSBuild to the publish PowerShell script we can place the info into the `PublishProperties` array using the following structure. 73 | 74 | ```powershell 75 | Publish-AspNet -packOutput $packOutput -publishProperties @{ 76 |     'WebPublishMethod'='MSDeploy' 77 |     'MSDeployServiceURL'='contoso.scm.azurewebsites.net:443' 78 |     'DeployIisAppPath'='contoso';'Username'='$contoso';'Password'="$env:PublishPwd" 79 |     'ExcludeFiles'=@( 80 |         @{'absolutepath'='wwwroot\\test.txt'}, 81 |         @{'absolutepath'='wwwroot\\_references.js'} 82 |     ) 83 |     'ConnectionStringUpdates'=@( 84 |         @{ 85 |             'ContextName'='MusicStore.Models.MusicStoreContext' 86 |             'DestConString'='' 87 |             'ProjectFolderPath'='' 88 |         }, 89 |         @{ 90 |             'Type'='Script' 91 |             'ScriptPath'='c:\temp\path\to\script.sql' 92 |             'DestConString'='