From 582f3f867eeb8fca00e6b328faf7665c9a98476c Mon Sep 17 00:00:00 2001
From: Ryan Nowak <nowakra@gmail.com>
Date: Mon, 19 Nov 2018 17:54:51 -0800
Subject: [PATCH] Injest new Roslyn and do netstandard2.0/net472

---
 NuGetPackageVerifier.json                     | 206 +-----------------
 build/MPack.targets                           |  10 +-
 build/dependencies.props                      |  20 +-
 korebuild-lock.txt                            |   4 +-
 ...ore.Mvc.Razor.Extensions.Version1_X.csproj |   2 +-
 ...ore.Mvc.Razor.Extensions.Version2_X.csproj |   2 +-
 ...oft.AspNetCore.Mvc.Razor.Extensions.csproj |   2 +-
 ...Microsoft.AspNetCore.Razor.Language.csproj |   2 +-
 .../Client.cs                                 |   6 +-
 ...osoft.CodeAnalysis.Razor.Workspaces.csproj |   2 +-
 .../Microsoft.CodeAnalysis.Razor.csproj       |   7 +-
 src/Microsoft.NET.Sdk.Razor/DotnetToolTask.cs |   2 +-
 .../Microsoft.NET.Sdk.Razor.csproj            |  28 ---
 ...Microsoft.VisualStudio.Editor.Razor.csproj |   2 +-
 ...alStudio.Mac.LanguageServices.Razor.csproj |   6 +-
 .../RazorPageGenerator.csproj                 |   2 +-
 ...soft.AspNetCore.Razor.Language.Test.csproj |   3 +-
 .../IntegrationTests/IntegrationTestBase.cs   |  21 --
 .../Language/Legacy/ParserTestBase.cs         |  33 ---
 ...rosoft.AspNetCore.Razor.Test.Common.csproj |   2 +-
 ...alysis.Razor.Workspaces.Test.Common.csproj |   2 +-
 ...sualStudio.Editor.Razor.Test.Common.csproj |   6 +-
 ...soft.VisualStudio.Editor.Razor.Test.csproj |   6 +-
 ...dio.Mac.LanguageServices.Razor.Test.csproj |   6 +-
 test/testapps/Directory.Build.props           |   3 +
 ...crosoft.VisualStudio.Mac.RazorAddin.csproj |   6 +-
 ...crosoft.VisualStudio.RazorExtension.csproj |   6 +-
 27 files changed, 70 insertions(+), 327 deletions(-)

diff --git a/NuGetPackageVerifier.json b/NuGetPackageVerifier.json
index b70d370dc09..ceaad8c6706 100644
--- a/NuGetPackageVerifier.json
+++ b/NuGetPackageVerifier.json
@@ -22,33 +22,7 @@
         "Exclusions": {
           "ASSEMBLY_DESCRIPTION": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "ASSEMBLY_PRODUCT": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
@@ -56,204 +30,38 @@
           },
           "NEUTRAL_RESOURCES_LANGUAGE": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "SERVICING_ATTRIBUTE": {
-            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "WRONG_PUBLICKEYTOKEN": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/runtimes/unix/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Collections.Immutable.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Reflection.Metadata.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "ASSEMBLY_INFORMATIONAL_VERSION_MISMATCH": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/runtimes/unix/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Collections.Immutable.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Reflection.Metadata.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "ASSEMBLY_FILE_VERSION_MISMATCH": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/runtimes/unix/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Collections.Immutable.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Reflection.Metadata.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "ASSEMBLY_VERSION_MISMATCH": {
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.CSharp.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Microsoft.CodeAnalysis.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/Newtonsoft.Json.dll": "This assembly is not owned by us and does not follow our conventions.",
             "tools/netcoreapp3.0/runtimes/unix/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Collections.Immutable.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/System.Reflection.Metadata.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/cs/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/de/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/es/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/fr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/it/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ja/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ko/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pl/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/pt-BR/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/ru/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/tr/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hans/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.CSharp.resources.dll": "This assembly is not owned by us and does not follow our conventions.",
-            "tools/netcoreapp3.0/zh-Hant/Microsoft.CodeAnalysis.resources.dll": "This assembly is not owned by us and does not follow our conventions."
+            "tools/netcoreapp3.0/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll": "This assembly is not owned by us and does not follow our conventions."
           },
           "BUILD_ITEMS_FRAMEWORK": {
             "*": "Razor SDK does not contain any dependencies or binaries and consequently does not have a dependency group."
diff --git a/build/MPack.targets b/build/MPack.targets
index 24c158d8a2f..e00b58a968f 100644
--- a/build/MPack.targets
+++ b/build/MPack.targets
@@ -7,9 +7,9 @@
     <MPackArtifactCategory>shipoob</MPackArtifactCategory>
 
     <MPackIntermediateOutputPath>$(IntermediateDir)mpack\</MPackIntermediateOutputPath>
-    <AddinOutputPath>$(AddinDirectory)bin\$(Configuration)\net461\</AddinOutputPath>
+    <AddinOutputPath>$(AddinDirectory)bin\$(Configuration)\net472\</AddinOutputPath>
     <LanguageServiceName>Microsoft.VisualStudio.Mac.LanguageServices.Razor</LanguageServiceName>
-    <LanguageServiceOutputPath>$(RepositoryRoot)src\$(LanguageServiceName)\bin\$(Configuration)\net461\</LanguageServiceOutputPath>
+    <LanguageServiceOutputPath>$(RepositoryRoot)src\$(LanguageServiceName)\bin\$(Configuration)\net472\</LanguageServiceOutputPath>
     <MPackName>$(AddinName)_$(AddinVersion)</MPackName>
     <MPackFileName>$(MPackName).mpack</MPackFileName>
     <MPackOutputPath>$(BuildDir)$(MPackFileName)</MPackOutputPath>
@@ -72,9 +72,9 @@
     </ItemGroup>
 
     <ItemGroup>
-      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.dll" />
-      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.dll" />
-      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.dll" />
+      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.dll" />
+      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.dll" />
+      <LanguageServiceExtensionAssembly Include="$(RepositoryRoot)src\Microsoft.AspNetCore.Mvc.Razor.Extensions\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.dll" />
       <LanguageServiceAssembly Include="$(LanguageServiceOutputPath)%(LanguageServiceAssemblyNames.Identity)" Condition="Exists('$(LanguageServiceOutputPath)%(LanguageServiceAssemblyNames.Identity)')" />
       <LanguageServiceAssembly Include="%(LanguageServiceExtensionAssembly.Identity)" />
       <LanguageServicePDB Include="%(LanguageServiceAssembly.RootDir)%(Directory)%(FileName).pdb" Condition="Exists('%(LanguageServiceAssembly.RootDir)%(Directory)%(FileName).pdb')" />
diff --git a/build/dependencies.props b/build/dependencies.props
index cf7cadb1927..983109a3be6 100644
--- a/build/dependencies.props
+++ b/build/dependencies.props
@@ -51,16 +51,16 @@
     <SystemRuntimeInteropServicesRuntimeInformationPackageVersion>4.3.0</SystemRuntimeInteropServicesRuntimeInformationPackageVersion>
     <SystemValueTuplePackageVersion>4.6.0-preview1-26829-04</SystemValueTuplePackageVersion>
     <VisualStudio_NewtonsoftJsonPackageVersion>9.0.1</VisualStudio_NewtonsoftJsonPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisCommonPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisCommonPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>
-    <VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>
-    <VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>
-    <VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion>2.11.0-beta1-63430-03</VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisCommonPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisCommonPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>
+    <VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>
+    <VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>
+    <VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion>2.11.0-beta3-63519-01</VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion>
     <XunitAnalyzersPackageVersion>0.10.0</XunitAnalyzersPackageVersion>
     <XunitPackageVersion>2.3.1</XunitPackageVersion>
     <XunitRunnerVisualStudioPackageVersion>2.4.0</XunitRunnerVisualStudioPackageVersion>
diff --git a/korebuild-lock.txt b/korebuild-lock.txt
index 91d56e97daa..57203003a08 100644
--- a/korebuild-lock.txt
+++ b/korebuild-lock.txt
@@ -1,2 +1,2 @@
-version:3.0.0-alpha1-20181108.5
-commithash:dae1d0c39ad86505e53f3629665714313bfd0d7d
+version:3.0.0-build-20181120.4
+commithash:84dcc6f0eb5455a3c0305d6d238926defb050889
diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.csproj b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.csproj
index c6b3d3e2124..0d61d12b265 100644
--- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.csproj
+++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>ASP.NET Core design time hosting infrastructure for the Razor view engine.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
     <PackageTags>$(PackageTags);aspnetcoremvc</PackageTags>
     <EnableApiCheck>false</EnableApiCheck>
   </PropertyGroup>
diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.csproj b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.csproj
index 37eafe0684a..e77d4c38373 100644
--- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.csproj
+++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X/Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>ASP.NET Core design time hosting infrastructure for the Razor view engine.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
     <PackageTags>$(PackageTags);aspnetcoremvc</PackageTags>
   </PropertyGroup>
 
diff --git a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/Microsoft.AspNetCore.Mvc.Razor.Extensions.csproj b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/Microsoft.AspNetCore.Mvc.Razor.Extensions.csproj
index 845b3b434a4..afa5ecd6799 100644
--- a/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/Microsoft.AspNetCore.Mvc.Razor.Extensions.csproj
+++ b/src/Microsoft.AspNetCore.Mvc.Razor.Extensions/Microsoft.AspNetCore.Mvc.Razor.Extensions.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>ASP.NET Core design time hosting infrastructure for the Razor view engine.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
     <PackageTags>$(PackageTags);aspnetcoremvc</PackageTags>
   </PropertyGroup>
 
diff --git a/src/Microsoft.AspNetCore.Razor.Language/Microsoft.AspNetCore.Razor.Language.csproj b/src/Microsoft.AspNetCore.Razor.Language/Microsoft.AspNetCore.Razor.Language.csproj
index 2cb75415c14..1fd7aeebf5a 100644
--- a/src/Microsoft.AspNetCore.Razor.Language/Microsoft.AspNetCore.Razor.Language.csproj
+++ b/src/Microsoft.AspNetCore.Razor.Language/Microsoft.AspNetCore.Razor.Language.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor parser and code generation infrastructure.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/src/Microsoft.AspNetCore.Razor.Tools/Client.cs b/src/Microsoft.AspNetCore.Razor.Tools/Client.cs
index 9378906d453..cf94173337f 100644
--- a/src/Microsoft.AspNetCore.Razor.Tools/Client.cs
+++ b/src/Microsoft.AspNetCore.Razor.Tools/Client.cs
@@ -4,7 +4,7 @@
 using System;
 using System.IO;
 using System.IO.Pipes;
-#if NET46
+#if NETFRAMEWORK
 using System.Security.AccessControl;
 using System.Security.Principal;
 #endif
@@ -71,7 +71,7 @@ namespace Microsoft.AspNetCore.Razor.Tools
                 ServerLogger.Log("Named pipe '{0}' connected", pipeName);
                 cancellationToken.ThrowIfCancellationRequested();
 
-#if NET46
+#if NETFRAMEWORK
                 // Verify that we own the pipe.
                 if (!CheckPipeConnectionOwnership(stream))
                 {
@@ -89,7 +89,7 @@ namespace Microsoft.AspNetCore.Razor.Tools
             }
         }
 
-#if NET46
+#if NETFRAMEWORK
         /// <summary>
         /// Check to ensure that the named pipe server we connected to is owned by the same
         /// user.
diff --git a/src/Microsoft.CodeAnalysis.Razor.Workspaces/Microsoft.CodeAnalysis.Razor.Workspaces.csproj b/src/Microsoft.CodeAnalysis.Razor.Workspaces/Microsoft.CodeAnalysis.Razor.Workspaces.csproj
index 3a124ef7914..7849c204396 100644
--- a/src/Microsoft.CodeAnalysis.Razor.Workspaces/Microsoft.CodeAnalysis.Razor.Workspaces.csproj
+++ b/src/Microsoft.CodeAnalysis.Razor.Workspaces/Microsoft.CodeAnalysis.Razor.Workspaces.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor design-time infrastructure.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
     <EnableApiCheck>false</EnableApiCheck>
     <DefineConstants>$(DefineConstants);DOCUMENT_SERVICE_FACTORY</DefineConstants>
   </PropertyGroup>
diff --git a/src/Microsoft.CodeAnalysis.Razor/Microsoft.CodeAnalysis.Razor.csproj b/src/Microsoft.CodeAnalysis.Razor/Microsoft.CodeAnalysis.Razor.csproj
index 4391fc3cdf6..e1efe71870d 100644
--- a/src/Microsoft.CodeAnalysis.Razor/Microsoft.CodeAnalysis.Razor.csproj
+++ b/src/Microsoft.CodeAnalysis.Razor/Microsoft.CodeAnalysis.Razor.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor design-time infrastructure.</Description>
-    <TargetFrameworks>net46;netstandard2.0</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
@@ -13,9 +13,4 @@
     <PackageReference Include="Microsoft.CodeAnalysis.Common" Version="$(MicrosoftCodeAnalysisCommonPackageVersion)" />
     <PackageReference Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisCSharpPackageVersion)" />
   </ItemGroup>
-
-  <ItemGroup Condition=" '$(TargetFramework)' == 'net46' ">
-    <PackageReference Include="System.Runtime.InteropServices.RuntimeInformation" Version="$(SystemRuntimeInteropServicesRuntimeInformationPackageVersion)" />
-  </ItemGroup>
-
 </Project>
diff --git a/src/Microsoft.NET.Sdk.Razor/DotnetToolTask.cs b/src/Microsoft.NET.Sdk.Razor/DotnetToolTask.cs
index d0ec48f2b27..79694479a4b 100644
--- a/src/Microsoft.NET.Sdk.Razor/DotnetToolTask.cs
+++ b/src/Microsoft.NET.Sdk.Razor/DotnetToolTask.cs
@@ -124,7 +124,7 @@ namespace Microsoft.AspNetCore.Razor.Tasks
             string commandLineCommands,
             out int result)
         {
-#if !NET46
+#if !NETFRAMEWORK
             if (!SuppressCurrentUserOnlyPipeOptions && !Enum.IsDefined(typeof(PipeOptions), PipeOptionCurrentUserOnly))
             {
                 // For security reasons, we don't want to spin up a server that doesn't
diff --git a/src/Microsoft.NET.Sdk.Razor/Microsoft.NET.Sdk.Razor.csproj b/src/Microsoft.NET.Sdk.Razor/Microsoft.NET.Sdk.Razor.csproj
index 4f37e4b9561..6f6d4be734d 100644
--- a/src/Microsoft.NET.Sdk.Razor/Microsoft.NET.Sdk.Razor.csproj
+++ b/src/Microsoft.NET.Sdk.Razor/Microsoft.NET.Sdk.Razor.csproj
@@ -65,35 +65,7 @@
 
     <!-- Binaries that should be signed by corefx/roslyn -->
     <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\Microsoft.CodeAnalysis.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\cs\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\de\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\es\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\fr\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\it\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ja\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ko\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\pl\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\pt-BR\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ru\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\tr\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\zh-Hans\Microsoft.CodeAnalysis.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\zh-Hant\Microsoft.CodeAnalysis.resources.dll" />
     <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\Microsoft.CodeAnalysis.CSharp.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\cs\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\de\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\es\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\fr\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\it\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ja\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ko\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\pl\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\pt-BR\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\ru\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\tr\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\zh-Hans\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\zh-Hant\Microsoft.CodeAnalysis.CSharp.resources.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\System.Collections.Immutable.dll" />
-    <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\System.Reflection.Metadata.dll" />
     <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\runtimes\unix\lib\netstandard1.3\System.Text.Encoding.CodePages.dll" />
     <ExcludePackageFileFromSigning Include="$(SdkOutputPath)tools\netcoreapp3.0\runtimes\win\lib\netstandard1.3\System.Text.Encoding.CodePages.dll" />
   </ItemGroup>
diff --git a/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj b/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj
index 3af8804777b..7ae2c1ff0ac 100644
--- a/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj
+++ b/src/Microsoft.VisualStudio.Editor.Razor/Microsoft.VisualStudio.Editor.Razor.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFrameworks>net46</TargetFrameworks>
+    <TargetFrameworks>net472</TargetFrameworks>
     <Description>Razor is a markup syntax for adding server-side logic to web pages. This package contains the Visual Studio agnostic Razor design-time infrastructure.</Description>
     <EnableApiCheck>false</EnableApiCheck>
   </PropertyGroup>
diff --git a/src/Microsoft.VisualStudio.Mac.LanguageServices.Razor/Microsoft.VisualStudio.Mac.LanguageServices.Razor.csproj b/src/Microsoft.VisualStudio.Mac.LanguageServices.Razor/Microsoft.VisualStudio.Mac.LanguageServices.Razor.csproj
index 69e9071704e..b3c81528d14 100644
--- a/src/Microsoft.VisualStudio.Mac.LanguageServices.Razor/Microsoft.VisualStudio.Mac.LanguageServices.Razor.csproj
+++ b/src/Microsoft.VisualStudio.Mac.LanguageServices.Razor/Microsoft.VisualStudio.Mac.LanguageServices.Razor.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>net461</TargetFramework>
+    <TargetFramework>net472</TargetFramework>
     <Description>Razor is a markup syntax for adding server-side logic to web pages. This package contains the Razor design-time infrastructure for Visual Studio for Mac.</Description>
     <EnableApiCheck>false</EnableApiCheck>
   </PropertyGroup>
@@ -15,4 +15,8 @@
     <ProjectReference Include="..\..\src\Microsoft.VisualStudio.Editor.Razor\Microsoft.VisualStudio.Editor.Razor.csproj" />
   </ItemGroup>
 
+  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
+    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssemblies)" PrivateAssets="All" />
+  </ItemGroup>
+
 </Project>
diff --git a/src/RazorPageGenerator/RazorPageGenerator.csproj b/src/RazorPageGenerator/RazorPageGenerator.csproj
index 2668c16904b..c7a690e4d62 100644
--- a/src/RazorPageGenerator/RazorPageGenerator.csproj
+++ b/src/RazorPageGenerator/RazorPageGenerator.csproj
@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <Description>Builds Razor pages for views in a project. For internal use only.</Description>
-    <TargetFramework>netcoreapp2.1</TargetFramework>
+    <TargetFramework>netcoreapp3.0</TargetFramework>
     <AssemblyName>dotnet-razorpagegenerator</AssemblyName>
     <PackageId>RazorPageGenerator</PackageId>
     <OutputType>Exe</OutputType>
diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Microsoft.AspNetCore.Razor.Language.Test.csproj b/test/Microsoft.AspNetCore.Razor.Language.Test/Microsoft.AspNetCore.Razor.Language.Test.csproj
index 57a0000191d..feec4311800 100644
--- a/test/Microsoft.AspNetCore.Razor.Language.Test/Microsoft.AspNetCore.Razor.Language.Test.csproj
+++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Microsoft.AspNetCore.Razor.Language.Test.csproj
@@ -1,8 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFrameworks>$(DeveloperBuildTestTfms)</TargetFrameworks>
-    <TargetFrameworks Condition=" '$(DeveloperBuild)' != 'true' AND '$(OS)' == 'Windows_NT' ">$(TargetFrameworks);net46</TargetFrameworks>
+    <TargetFrameworks>$(StandardTestTfms)</TargetFrameworks>
     <DefaultItemExcludes>$(DefaultItemExcludes);TestFiles\**\*</DefaultItemExcludes>
     <DefineConstants Condition="'$(GenerateBaselines)'=='true'">$(DefineConstants);GENERATE_BASELINES</DefineConstants>
   </PropertyGroup>
diff --git a/test/Microsoft.AspNetCore.Razor.Test.Common/Language/IntegrationTests/IntegrationTestBase.cs b/test/Microsoft.AspNetCore.Razor.Test.Common/Language/IntegrationTests/IntegrationTestBase.cs
index 73f03f9e1ca..c42bb4ef91f 100644
--- a/test/Microsoft.AspNetCore.Razor.Test.Common/Language/IntegrationTests/IntegrationTestBase.cs
+++ b/test/Microsoft.AspNetCore.Razor.Test.Common/Language/IntegrationTests/IntegrationTestBase.cs
@@ -7,12 +7,7 @@ using System.IO;
 using System.Linq;
 using System.Reflection;
 using System.Text.RegularExpressions;
-#if NET46
-using System.Runtime.Remoting;
-using System.Runtime.Remoting.Messaging;
-#else
 using System.Threading;
-#endif
 using Microsoft.AspNetCore.Razor.Language.Legacy;
 using Microsoft.AspNetCore.Razor.Language.CodeGeneration;
 using Microsoft.AspNetCore.Razor.Language.Intermediate;
@@ -28,9 +23,7 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
     [IntializeTestFile]
     public abstract class IntegrationTestBase
     {
-#if !NET46
         private static readonly AsyncLocal<string> _fileName = new AsyncLocal<string>();
-#endif
 
         private static readonly CSharpCompilation DefaultBaseCompilation;
 
@@ -114,22 +107,8 @@ namespace Microsoft.AspNetCore.Razor.Language.IntegrationTests
         // Used by the test framework to set the 'base' name for test files.
         public static string FileName
         {
-#if NETFRAMEWORK
-            get
-            {
-                var handle = (ObjectHandle)CallContext.LogicalGetData("IntegrationTestBase_FileName");
-                return (string)handle.Unwrap();
-            }
-            set
-            {
-                CallContext.LogicalSetData("IntegrationTestBase_FileName", new ObjectHandle(value));
-            }
-#elif NETCOREAPP
             get { return _fileName.Value; }
             set { _fileName.Value = value; }
-#else
-#error Target frameworks need to be updated            
-#endif
         }
 
         public string FileExtension { get; set; } = ".cshtml";
diff --git a/test/Microsoft.AspNetCore.Razor.Test.Common/Language/Legacy/ParserTestBase.cs b/test/Microsoft.AspNetCore.Razor.Test.Common/Language/Legacy/ParserTestBase.cs
index 801a6dbb72a..1e88100c466 100644
--- a/test/Microsoft.AspNetCore.Razor.Test.Common/Language/Legacy/ParserTestBase.cs
+++ b/test/Microsoft.AspNetCore.Razor.Test.Common/Language/Legacy/ParserTestBase.cs
@@ -8,12 +8,7 @@ using System.Diagnostics;
 using System.IO;
 using System.Linq;
 using System.Reflection;
-#if NET46
-using System.Runtime.Remoting;
-using System.Runtime.Remoting.Messaging;
-#else
 using System.Threading;
-#endif
 using System.Text;
 using Xunit;
 using Xunit.Sdk;
@@ -24,10 +19,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
     [IntializeTestFile]
     public abstract class ParserTestBase
     {
-#if !NET46
         private static readonly AsyncLocal<string> _fileName = new AsyncLocal<string>();
         private static readonly AsyncLocal<bool> _isTheory = new AsyncLocal<bool>();
-#endif
 
         internal ParserTestBase()
         {
@@ -51,40 +44,14 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy
         // Used by the test framework to set the 'base' name for test files.
         public static string FileName
         {
-#if NETFRAMEWORK
-            get
-            {
-                var handle = (ObjectHandle)CallContext.LogicalGetData("ParserTestBase_FileName");
-                return (string)handle.Unwrap();
-            }
-            set
-            {
-                CallContext.LogicalSetData("ParserTestBase_FileName", new ObjectHandle(value));
-            }
-#elif NETCOREAPP
             get { return _fileName.Value; }
             set { _fileName.Value = value; }
-#else
-#error Target frameworks need to be updated.
-#endif
         }
 
         public static bool IsTheory
         {
-#if NETFRAMEWORK
-            get
-            {
-                var handle = (ObjectHandle)CallContext.LogicalGetData("ParserTestBase_IsTheory");
-                return (bool)handle.Unwrap();
-            }
-            set
-            {
-                CallContext.LogicalSetData("ParserTestBase_IsTheory", new ObjectHandle(value));
-            }
-#elif NETCOREAPP
             get { return _isTheory.Value; }
             set { _isTheory.Value = value; }
-#endif
         }
 
         protected int BaselineTestCount { get; set; }
diff --git a/test/Microsoft.AspNetCore.Razor.Test.Common/Microsoft.AspNetCore.Razor.Test.Common.csproj b/test/Microsoft.AspNetCore.Razor.Test.Common/Microsoft.AspNetCore.Razor.Test.Common.csproj
index 418a3b82d1c..a68e6182b42 100644
--- a/test/Microsoft.AspNetCore.Razor.Test.Common/Microsoft.AspNetCore.Razor.Test.Common.csproj
+++ b/test/Microsoft.AspNetCore.Razor.Test.Common/Microsoft.AspNetCore.Razor.Test.Common.csproj
@@ -4,7 +4,7 @@
     <!-- To generate baselines, run tests with /p:GenerateBaselines=true -->
     <DefineConstants Condition="'$(GenerateBaselines)'=='true'">$(DefineConstants);GENERATE_BASELINES</DefineConstants>
     <DefineConstants>$(DefineConstants);__RemoveThisBitTo__GENERATE_BASELINES</DefineConstants>
-    <TargetFrameworks>netcoreapp3.0;net46</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/test/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common.csproj b/test/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common.csproj
index 9c2ffdd7e0e..3ea5cdf474a 100644
--- a/test/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common.csproj
+++ b/test/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common/Microsoft.CodeAnalysis.Razor.Workspaces.Test.Common.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFrameworks>net46;netcoreapp3.0;$(StandardTestTfms)</TargetFrameworks>
+    <TargetFramework>netstandard2.0</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj
index 18327289a45..e165062bc53 100644
--- a/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj
+++ b/test/Microsoft.VisualStudio.Editor.Razor.Test.Common/Microsoft.VisualStudio.Editor.Razor.Test.Common.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFrameworks>net46</TargetFrameworks>
+    <TargetFramework>net472</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
@@ -17,4 +17,8 @@
     <PackageReference Include="Microsoft.Extensions.DependencyModel" Version="$(MicrosoftExtensionsDependencyModelPackageVersion)" />
   </ItemGroup>
 
+  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
+    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssemblies)" PrivateAssets="All" />
+  </ItemGroup>
+
 </Project>
diff --git a/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj b/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj
index 0909a64e5ca..112e7364808 100644
--- a/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj
+++ b/test/Microsoft.VisualStudio.Editor.Razor.Test/Microsoft.VisualStudio.Editor.Razor.Test.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>net461</TargetFramework>
+    <TargetFramework>net472</TargetFramework>
     <PreserveCompilationContext>true</PreserveCompilationContext>
   </PropertyGroup>
 
@@ -36,4 +36,8 @@
     <PackageReference Include="xunit" Version="$(XunitPackageVersion)" />
   </ItemGroup>
 
+  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
+    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssemblies)" PrivateAssets="All" />
+  </ItemGroup>
+
 </Project>
diff --git a/test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test.csproj b/test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test.csproj
index d0f3a281dfe..59efeb770dd 100644
--- a/test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test.csproj
+++ b/test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test/Microsoft.VisualStudio.Mac.LanguageServices.Razor.Test.csproj
@@ -1,7 +1,7 @@
 <Project Sdk="Microsoft.NET.Sdk">
 
   <PropertyGroup>
-    <TargetFramework>net461</TargetFramework>
+    <TargetFramework>net472</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
@@ -30,4 +30,8 @@
     <PackageReference Include="xunit" Version="$(XunitPackageVersion)" />
   </ItemGroup>
 
+  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
+    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssemblies)" PrivateAssets="All" />
+  </ItemGroup>
+
 </Project>
diff --git a/test/testapps/Directory.Build.props b/test/testapps/Directory.Build.props
index c0e194b7d3d..8020d32ee09 100644
--- a/test/testapps/Directory.Build.props
+++ b/test/testapps/Directory.Build.props
@@ -20,6 +20,9 @@
     <NETCoreAppMaximumVersion>99.9</NETCoreAppMaximumVersion>
 
     <NETStandardImplicitPackageVersion>$(NETStandardLibrary20PackageVersion)</NETStandardImplicitPackageVersion>
+
+    <!-- Working around an issue in XDT transforms -->
+    <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
   </PropertyGroup>
 
   <!-- Don't use the server when building in place. This locks up rzc.dll -->
diff --git a/tooling/Microsoft.VisualStudio.Mac.RazorAddin/Microsoft.VisualStudio.Mac.RazorAddin.csproj b/tooling/Microsoft.VisualStudio.Mac.RazorAddin/Microsoft.VisualStudio.Mac.RazorAddin.csproj
index 9f6462e3a7b..9e27487228e 100644
--- a/tooling/Microsoft.VisualStudio.Mac.RazorAddin/Microsoft.VisualStudio.Mac.RazorAddin.csproj
+++ b/tooling/Microsoft.VisualStudio.Mac.RazorAddin/Microsoft.VisualStudio.Mac.RazorAddin.csproj
@@ -2,7 +2,7 @@
   <Import Project="AddinMetadata.props" />
   
   <PropertyGroup>
-    <TargetFramework>net461</TargetFramework>
+    <TargetFramework>net472</TargetFramework>
   </PropertyGroup>
 
   <ItemGroup>
@@ -41,6 +41,10 @@
     <PackageReference Include="Mono.Addins" Version="$(MonoAddinsPackageVersion)" />
   </ItemGroup>
 
+  <ItemGroup Condition="'$(TargetFrameworkIdentifier)' == '.NETFramework' ">
+    <PackageReference Include="Microsoft.NETFramework.ReferenceAssemblies" Version="$(MicrosoftNETFrameworkReferenceAssemblies)" PrivateAssets="All" />
+  </ItemGroup>
+
   <ItemGroup>
     <ProjectReference Include="..\..\src\Microsoft.VisualStudio.Mac.LanguageServices.Razor\Microsoft.VisualStudio.Mac.LanguageServices.Razor.csproj" />
   </ItemGroup>
diff --git a/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj b/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj
index 41e756a7dd6..7ef34bd712d 100644
--- a/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj
+++ b/tooling/Microsoft.VisualStudio.RazorExtension/Microsoft.VisualStudio.RazorExtension.csproj
@@ -273,9 +273,9 @@
   </ItemDefinitionGroup>
   <ItemGroup>
     <VSIXSourceItem Include="..\..\src\Microsoft.CodeAnalysis.Remote.Razor\bin\$(Configuration)\net472\Microsoft.CodeAnalysis.Remote.Razor.dll" />
-    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.dll" />
-    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.dll" />
-    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X\bin\$(Configuration)\net46\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.dll" />
+    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.dll" />
+    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version1_X.dll" />
+    <VSIXSourceItem Include="..\..\src\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X\bin\$(Configuration)\netstandard2.0\Microsoft.AspNetCore.Mvc.Razor.Extensions.Version2_X.dll" />
     <VSIXSourceItem Include="..\..\src\Microsoft.VisualStudio.LanguageServices.Razor\bin\$(Configuration)\net472\Microsoft.AspNetCore.Razor.Language.dll" />
     <VSIXSourceItem Include="..\..\src\Microsoft.VisualStudio.LanguageServices.Razor\bin\$(Configuration)\net472\Microsoft.CodeAnalysis.Razor.dll" />
     <VSIXSourceItem Include="..\..\src\Microsoft.VisualStudio.LanguageServices.Razor\bin\$(Configuration)\net472\Microsoft.CodeAnalysis.Razor.Workspaces.dll" />
-- 
GitLab