Просмотр исходного кода

Merge branch 'master' into merge/release/5.0-to-master

John Luo 5 лет назад
Родитель
Сommit
9144dcc16e
100 измененных файлов с 1316 добавлено и 947 удалено
  1. 5 18
      .github/ISSUE_TEMPLATE/razor_tooling.md
  2. 1 1
      Directory.Build.targets
  3. 150 150
      eng/Version.Details.xml
  4. 78 78
      eng/Versions.props
  5. 2 3
      src/Components/Components/src/ComponentBase.cs
  6. 2 2
      src/Framework/Directory.Build.props
  7. 1 1
      src/Installers/Debian/Runtime/Debian.Runtime.debproj
  8. 2 2
      src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj
  9. 3 3
      src/Installers/Rpm/Rpm.Runtime.Common.targets
  10. 3 3
      src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj
  11. 1 1
      src/Installers/Windows/AspNetCoreModule-Setup/Directory.Build.props
  12. 3 3
      src/Installers/Windows/Wix.targets
  13. 5 13
      src/Mvc/Mvc.Core/src/Builder/ControllerEndpointRouteBuilderExtensions.cs
  14. 1 0
      src/Mvc/Mvc.Core/src/DependencyInjection/MvcCoreServiceCollectionExtensions.cs
  15. 26 0
      src/Mvc/Mvc.Core/src/DependencyInjection/OrderedEndpointsSequenceProvider.cs
  16. 27 14
      src/Mvc/Mvc.Core/src/Routing/ControllerActionEndpointDataSource.cs
  17. 2 2
      src/Mvc/Mvc.Core/test/Routing/ControllerActionEndpointDataSourceTest.cs
  18. 2 11
      src/Mvc/Mvc.RazorPages/src/Builder/RazorPagesEndpointRouteBuilderExtensions.cs
  19. 29 3
      src/Mvc/Mvc.RazorPages/src/Infrastructure/PageActionEndpointDataSource.cs
  20. 2 2
      src/Mvc/Mvc.RazorPages/test/Infrastructure/PageActionEndpointDataSourceTest.cs
  21. 3 2
      src/Mvc/benchmarks/Microsoft.AspNetCore.Mvc.Performance/ControllerActionEndpointDatasourceBenchmark.cs
  22. 8 2
      src/Mvc/test/Mvc.FunctionalTests/HtmlGenerationTest.cs
  23. 165 0
      src/Mvc/test/Mvc.FunctionalTests/RoutingDynamicOrderTest.cs
  24. 30 0
      src/Mvc/test/WebSites/RoutingWebSite/Controllers/DynamicOrderController.cs
  25. 1 1
      src/Mvc/test/WebSites/RoutingWebSite/Pages/DynamicPage.cshtml
  26. 132 0
      src/Mvc/test/WebSites/RoutingWebSite/StartupForDynamicOrder.cs
  27. 1 1
      src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj
  28. 1 1
      src/ProjectTemplates/Web.Spa.ProjectTemplates/Microsoft.DotNet.Web.Spa.ProjectTemplates.csproj
  29. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AttributeDirectiveWithViewImports_DesignTime.codegen.html
  30. 6 6
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/BasicComponent_DesignTime.codegen.html
  31. 6 6
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Basic_DesignTime.codegen.html
  32. 11 11
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/IncompleteDirectives_DesignTime.codegen.html
  33. 2 2
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InheritsViewModel_DesignTime.codegen.html
  34. 2 2
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InheritsWithViewImports_DesignTime.codegen.html
  35. 3 3
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InjectWithModel_DesignTime.codegen.html
  36. 5 5
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InjectWithSemicolon_DesignTime.codegen.html
  37. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Inject_DesignTime.codegen.html
  38. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InvalidNamespaceAtEOF_DesignTime.codegen.html
  39. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MalformedPageDirective_DesignTime.codegen.html
  40. 4 4
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ModelExpressionTagHelper_DesignTime.codegen.html
  41. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Model_DesignTime.codegen.html
  42. 2 2
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MultipleModels_DesignTime.codegen.html
  43. 2 2
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/PageWithNamespace_DesignTime.codegen.html
  44. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPageWithNoLeadingPageDirective_DesignTime.codegen.html
  45. 10 10
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPagesWithRouteTemplate_DesignTime.codegen.html
  46. 16 16
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPagesWithoutModel_DesignTime.codegen.html
  47. 20 20
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPages_DesignTime.codegen.html
  48. 8 8
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Sections_DesignTime.codegen.html
  49. 4 4
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/UsingDirectives_DesignTime.codegen.html
  50. 5 5
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ViewComponentTagHelper_DesignTime.codegen.html
  51. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ViewWithNamespace_DesignTime.codegen.html
  52. 1 1
      src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/_ViewImports_DesignTime.codegen.html
  53. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/src/RazorHtmlWriter.cs
  54. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AddTagHelperDirective_DesignTime.codegen.html
  55. 4 4
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AttributeDirective_DesignTime.codegen.html
  56. 18 18
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Await_DesignTime.codegen.html
  57. 25 25
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks_DesignTime.codegen.html
  58. 32 32
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7_DesignTime.codegen.html
  59. 52 52
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp8_DesignTime.codegen.html
  60. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlockAtEOF_DesignTime.codegen.html
  61. 4 4
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlockWithTextElement_DesignTime.codegen.html
  62. 5 5
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlock_DesignTime.codegen.html
  63. 12 12
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ConditionalAttributes_DesignTime.codegen.html
  64. 8 8
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/DesignTime_DesignTime.codegen.html
  65. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyCodeBlock_DesignTime.codegen.html
  66. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyExplicitExpression_DesignTime.codegen.html
  67. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyImplicitExpressionInCode_DesignTime.codegen.html
  68. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyImplicitExpression_DesignTime.codegen.html
  69. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpressionAtEOF_DesignTime.codegen.html
  70. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpressionWithMarkup_DesignTime.codegen.html
  71. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpression_DesignTime.codegen.html
  72. 11 11
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExpressionsInCode_DesignTime.codegen.html
  73. 5 5
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/FunctionsBlockMinimal_DesignTime.codegen.html
  74. 9 9
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/FunctionsBlock_DesignTime.codegen.html
  75. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/HiddenSpansInCode_DesignTime.codegen.html
  76. 4 4
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Implements_DesignTime.codegen.html
  77. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ImplicitExpressionAtEOF_DesignTime.codegen.html
  78. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ImplicitExpression_DesignTime.codegen.html
  79. 18 18
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/IncompleteDirectives_DesignTime.codegen.html
  80. 2 2
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Inherits_DesignTime.codegen.html
  81. 2 2
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InlineBlocks_DesignTime.codegen.html
  82. 26 26
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Instrumented_DesignTime.codegen.html
  83. 5 5
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MarkupInCodeBlock_DesignTime.codegen.html
  84. 36 36
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Markup_InCodeBlocks_DesignTime.codegen.html
  85. 6 6
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NestedCSharp_DesignTime.codegen.html
  86. 4 4
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NestedCodeBlocks_DesignTime.codegen.html
  87. 26 26
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NoLinePragmas_DesignTime.codegen.html
  88. 10 10
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NullConditionalExpressions_DesignTime.codegen.html
  89. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/OpenedIf_DesignTime.codegen.html
  90. 5 5
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ParserError_DesignTime.codegen.html
  91. 13 13
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorComments_DesignTime.codegen.html
  92. 1 1
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RemoveTagHelperDirective_DesignTime.codegen.html
  93. 11 11
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Sections_DesignTime.codegen.html
  94. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SimpleUnspacedIf_DesignTime.codegen.html
  95. 81 81
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements_DesignTime.codegen.html
  96. 4 4
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/StringLiterals_DesignTime.codegen.html
  97. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Tags_DesignTime.codegen.html
  98. 34 34
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Templates_DesignTime.codegen.html
  99. 3 3
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/UnfinishedExpressionInCode_DesignTime.codegen.html
  100. 12 12
      src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Usings_DesignTime.codegen.html

+ 5 - 18
.github/ISSUE_TEMPLATE/razor_tooling.md

@@ -34,26 +34,13 @@ We will close this issue if:
 
 Please collect the data below before reporting your issue to aid us in diagnosing the root cause.
 
-#### Activity log
+#### Activity log (only needed if VS crashes)
 [Here](https://docs.microsoft.com/en-us/visualstudio/extensibility/how-to-use-the-activity-log?view=vs-2019#to-examine-the-activity-log) are the instructions on how to generate/acquire one. Note that GitHub does not generally allow .xml files to be uploaded with issues.
 
-#### Razor Language Server Client log
-<!-- In Visual Studio's `Output` window, the drop-down contains a `Razor Language Server Client` item. Include that below. -->
-<details>
-<summary>Razor Language Server Client Log Output</summary>
-
-Paste log output here
-
-</details>
-
-#### HTML Language Server Client log
-<!-- In Visual Studio's `Output` window, the drop-down contains a `HtmlyLanguageClient` item. Include that below. -->
-<details>
-<summary>HTML Language Server Client Log Output</summary>
-
-Paste log output here
-
-</details>
+#### Language Server logs
+1. Run Visual Studio with the [/Log](https://docs.microsoft.com/en-us/visualstudio/ide/reference/log-devenv-exe?view=vs-2019) command line switch
+2. Reproduce the issue
+3. Provide the logs located at `%Temp%\VisualStudio\LSP`
 
 ### Further technical details
 - VS version (Help => About Microsoft Visual Studio, i.e. 16.8.0 Preview 1 30313.27...). If in Codespaces there will be two versions (server and client), please provide both.

+ 1 - 1
Directory.Build.targets

@@ -131,7 +131,7 @@
   </ItemGroup>
 
   <PropertyGroup Condition="'$(Language)' == 'C#'">
-    <AssemblyVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).0.0</AssemblyVersion>
+    <AssemblyVersion>$(AspNetCoreMajorMinorVersion).0.0</AssemblyVersion>
   </PropertyGroup>
 
   <ItemGroup>

+ 150 - 150
eng/Version.Details.xml

@@ -13,309 +13,309 @@
       <Uri>https://github.com/dotnet/blazor</Uri>
       <Sha>cc449601d638ffaab58ae9487f0fd010bb178a12</Sha>
     </Dependency>
-    <Dependency Name="dotnet-ef" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="dotnet-ef" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.InMemory" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.Relational" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.Sqlite" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.SqlServer" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.Tools" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>ede96af3fdf94ae6b149f10451d573c37fe27669</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.EntityFrameworkCore.Design" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.EntityFrameworkCore.Design" Version="6.0.0-alpha.1.20417.8">
       <Uri>https://github.com/dotnet/efcore</Uri>
-      <Sha>f76334c60ceebb3c4255cf803558c2d166cd98ec</Sha>
+      <Sha>5099d918192f5df031e1ff5e3beea9cb361c605a</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Caching.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Caching.Memory" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Caching.Memory" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.Binder" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.Binder" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.CommandLine" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.CommandLine" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.FileExtensions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.FileExtensions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.Ini" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.Ini" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.Json" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.Json" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.UserSecrets" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.UserSecrets" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration.Xml" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration.Xml" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Configuration" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Configuration" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.DependencyInjection.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.DependencyInjection.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.DependencyInjection" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.DependencyInjection" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.FileProviders.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.FileProviders.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.FileProviders.Composite" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.FileProviders.Composite" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.FileProviders.Physical" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.FileProviders.Physical" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.FileSystemGlobbing" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.FileSystemGlobbing" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Hosting.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Hosting.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Hosting" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Hosting" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Http" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Http" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.Abstractions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.Abstractions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.Configuration" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.Configuration" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.Console" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.Console" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.Debug" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.Debug" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.EventSource" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.EventSource" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.EventLog" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.EventLog" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging.TraceSource" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging.TraceSource" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Logging" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Logging" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Options.ConfigurationExtensions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Options.ConfigurationExtensions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Options.DataAnnotations" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Options.DataAnnotations" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Options" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Options" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Primitives" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Primitives" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.Internal.Transport" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.Internal.Transport" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Win32.Registry" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Win32.Registry" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Win32.SystemEvents" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Win32.SystemEvents" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.ComponentModel.Annotations" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.ComponentModel.Annotations" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Diagnostics.DiagnosticSource" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Diagnostics.DiagnosticSource" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Diagnostics.EventLog" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Diagnostics.EventLog" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.DirectoryServices.Protocols" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.DirectoryServices.Protocols" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Drawing.Common" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Drawing.Common" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.IO.Pipelines" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.IO.Pipelines" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Net.Http.Json" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Net.Http.Json" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Net.Http.WinHttpHandler" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Net.Http.WinHttpHandler" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Net.WebSockets.WebSocketProtocol" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Net.WebSockets.WebSocketProtocol" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Reflection.Metadata" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Reflection.Metadata" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Resources.Extensions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Resources.Extensions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Runtime.CompilerServices.Unsafe" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
     <!-- System.Security.AccessControl should only be referenced in Dependencies.props and RTMVersions.csproj. -->
-    <Dependency Name="System.Security.AccessControl" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.AccessControl" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Security.Cryptography.Cng" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.Cryptography.Cng" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Security.Cryptography.Pkcs" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.Cryptography.Pkcs" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Security.Cryptography.Xml" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.Cryptography.Xml" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Security.Permissions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.Permissions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Security.Principal.Windows" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Security.Principal.Windows" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.ServiceProcess.ServiceController" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.ServiceProcess.ServiceController" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Text.Encodings.Web" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Text.Encodings.Web" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Text.Json" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Text.Json" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Threading.Channels" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Threading.Channels" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="System.Windows.Extensions" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="System.Windows.Extensions" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Extensions.DependencyModel" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.Extensions.DependencyModel" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.NETCore.App.Ref" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.NETCore.App.Ref" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
     <!--
          Win-x64 is used here because we have picked an arbitrary runtime identifier to flow the version of the latest NETCore.App runtime.
          All Runtime.$rid packages should have the same version.
     -->
-    <Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.NETCore.App.Internal" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.NETCore.App.Internal" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
   </ProductDependencies>
   <ToolsetDependencies>
     <!-- Listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
-    <Dependency Name="Microsoft.NETCore.Platforms" Version="5.0.0-rc.1.20428.3">
+    <Dependency Name="Microsoft.NETCore.Platforms" Version="5.0.0-rc.1.20417.14">
       <Uri>https://github.com/dotnet/runtime</Uri>
-      <Sha>1dfd9438149f74ae11918a7b0709b8d58c61443f</Sha>
+      <Sha>907f7da59b40c80941b02ac2a46650adf3f606bc</Sha>
     </Dependency>
     <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20419.21">
       <Uri>https://github.com/dotnet/arcade</Uri>
@@ -325,9 +325,9 @@
       <Uri>https://github.com/dotnet/arcade</Uri>
       <Sha>56a95cc477558c1ccdf16d7abe962849ea970ba4</Sha>
     </Dependency>
-    <Dependency Name="Microsoft.Net.Compilers.Toolset" Version="3.8.0-2.20407.3">
+    <Dependency Name="Microsoft.Net.Compilers.Toolset" Version="3.8.0-2.20419.4">
       <Uri>https://github.com/dotnet/roslyn</Uri>
-      <Sha>dba2fa57432b4bd9cc7880e2c6fe3acdd01bba3c</Sha>
+      <Sha>afb288f6c778c18003e89d8dd8ca94106df18702</Sha>
     </Dependency>
   </ToolsetDependencies>
 </Dependencies>

+ 78 - 78
eng/Versions.props

@@ -29,18 +29,18 @@
     <DisableServicingFeatures Condition=" '$(DisableServicingFeatures)' == '' AND '$(StabilizePackageVersion)' != 'true' ">true</DisableServicingFeatures>
     <!-- Servicing builds have different characteristics for the way dependencies, baselines, and versions are handled. -->
     <IsServicingBuild Condition=" '$(DisableServicingFeatures)' != 'true' AND '$(PreReleaseVersionLabel)' == 'servicing' ">true</IsServicingBuild>
-    <VersionPrefix>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion)</VersionPrefix>
+    <VersionPrefix>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion)</VersionPrefix>
     <!-- TargetingPackVersionPrefix is used by projects, like .deb and .rpm, which use slightly different version formats. -->
     <TargetingPackVersionPrefix>$(VersionPrefix)</TargetingPackVersionPrefix>
     <!-- Targeting packs do not produce patch versions in servicing builds. No API changes are allowed in patches. -->
-    <TargetingPackVersionPrefix Condition="'$(IsTargetingPackBuilding)' != 'true'">$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).0</TargetingPackVersionPrefix>
+    <TargetingPackVersionPrefix Condition="'$(IsTargetingPackBuilding)' != 'true'">$(AspNetCoreMajorMinorVersion).0</TargetingPackVersionPrefix>
     <ExperimentalVersionPrefix>0.3.$(AspNetCorePatchVersion)</ExperimentalVersionPrefix>
     <!-- ANCM versioning is intentionally 10 + AspNetCoreMajorVersion because earlier versions of ANCM shipped as 8.x. -->
     <AspNetCoreModuleVersionMajor>$([MSBuild]::Add(10, $(AspNetCoreMajorVersion)))</AspNetCoreModuleVersionMajor>
     <AspNetCoreModuleVersionMinor>$(AspNetCoreMinorVersion)</AspNetCoreModuleVersionMinor>
     <AspNetCoreModuleVersionRevision>$(AspNetCorePatchVersion)</AspNetCoreModuleVersionRevision>
     <!-- This is used for error checking to ensure generated code and baselines are up to date when we increment the patch. -->
-    <PreviousAspNetCoreReleaseVersion Condition=" '$(AspNetCorePatchVersion)' != '0' ">$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$([MSBuild]::Subtract($(AspNetCorePatchVersion), 1))</PreviousAspNetCoreReleaseVersion>
+    <PreviousAspNetCoreReleaseVersion Condition=" '$(AspNetCorePatchVersion)' != '0' ">$(AspNetCoreMajorMinorVersion).$([MSBuild]::Subtract($(AspNetCorePatchVersion), 1))</PreviousAspNetCoreReleaseVersion>
   </PropertyGroup>
   <PropertyGroup Label="Arcade settings">
     <!-- Opt-in to Arcade tools for building VSIX projects. -->
@@ -62,87 +62,87 @@
   -->
   <PropertyGroup Label="Automated">
     <!-- Packages from dotnet/roslyn -->
-    <MicrosoftNetCompilersToolsetPackageVersion>3.8.0-2.20407.3</MicrosoftNetCompilersToolsetPackageVersion>
+    <MicrosoftNetCompilersToolsetPackageVersion>3.8.0-2.20419.4</MicrosoftNetCompilersToolsetPackageVersion>
     <!-- Packages from dotnet/runtime -->
-    <MicrosoftExtensionsDependencyModelPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsDependencyModelPackageVersion>
-    <MicrosoftNETCoreAppInternalPackageVersion>5.0.0-rc.1.20428.3</MicrosoftNETCoreAppInternalPackageVersion>
-    <MicrosoftNETCoreAppRefPackageVersion>5.0.0-rc.1.20428.3</MicrosoftNETCoreAppRefPackageVersion>
-    <MicrosoftNETCoreAppRuntimewinx64PackageVersion>5.0.0-rc.1.20428.3</MicrosoftNETCoreAppRuntimewinx64PackageVersion>
-    <MicrosoftNETCoreBrowserDebugHostTransportPackageVersion>5.0.0-rc.1.20428.3</MicrosoftNETCoreBrowserDebugHostTransportPackageVersion>
-    <MicrosoftWin32RegistryPackageVersion>5.0.0-rc.1.20428.3</MicrosoftWin32RegistryPackageVersion>
-    <MicrosoftWin32SystemEventsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftWin32SystemEventsPackageVersion>
-    <MicrosoftExtensionsCachingAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsCachingAbstractionsPackageVersion>
-    <MicrosoftExtensionsCachingMemoryPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsCachingMemoryPackageVersion>
-    <MicrosoftExtensionsConfigurationAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
-    <MicrosoftExtensionsConfigurationBinderPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationBinderPackageVersion>
-    <MicrosoftExtensionsConfigurationCommandLinePackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
-    <MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
-    <MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
-    <MicrosoftExtensionsConfigurationIniPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationIniPackageVersion>
-    <MicrosoftExtensionsConfigurationJsonPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationJsonPackageVersion>
-    <MicrosoftExtensionsConfigurationPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationPackageVersion>
-    <MicrosoftExtensionsConfigurationUserSecretsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
-    <MicrosoftExtensionsConfigurationXmlPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsConfigurationXmlPackageVersion>
-    <MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
-    <MicrosoftExtensionsDependencyInjectionPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsDependencyInjectionPackageVersion>
-    <MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
-    <MicrosoftExtensionsFileProvidersCompositePackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsFileProvidersCompositePackageVersion>
-    <MicrosoftExtensionsFileProvidersPhysicalPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
-    <MicrosoftExtensionsFileSystemGlobbingPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
-    <MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>
-    <MicrosoftExtensionsHostingAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsHostingAbstractionsPackageVersion>
-    <MicrosoftExtensionsHostingPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsHostingPackageVersion>
-    <MicrosoftExtensionsHttpPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsHttpPackageVersion>
-    <MicrosoftExtensionsLoggingAbstractionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
-    <MicrosoftExtensionsLoggingConfigurationPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingConfigurationPackageVersion>
-    <MicrosoftExtensionsLoggingConsolePackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingConsolePackageVersion>
-    <MicrosoftExtensionsLoggingDebugPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingDebugPackageVersion>
-    <MicrosoftExtensionsLoggingEventSourcePackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingEventSourcePackageVersion>
-    <MicrosoftExtensionsLoggingEventLogPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingEventLogPackageVersion>
-    <MicrosoftExtensionsLoggingPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingPackageVersion>
-    <MicrosoftExtensionsLoggingTraceSourcePackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsLoggingTraceSourcePackageVersion>
-    <MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
-    <MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>
-    <MicrosoftExtensionsOptionsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsOptionsPackageVersion>
-    <MicrosoftExtensionsPrimitivesPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsPrimitivesPackageVersion>
-    <MicrosoftExtensionsInternalTransportPackageVersion>5.0.0-rc.1.20428.3</MicrosoftExtensionsInternalTransportPackageVersion>
-    <SystemComponentModelAnnotationsPackageVersion>5.0.0-rc.1.20428.3</SystemComponentModelAnnotationsPackageVersion>
-    <SystemDiagnosticsDiagnosticSourcePackageVersion>5.0.0-rc.1.20428.3</SystemDiagnosticsDiagnosticSourcePackageVersion>
-    <SystemDiagnosticsEventLogPackageVersion>5.0.0-rc.1.20428.3</SystemDiagnosticsEventLogPackageVersion>
-    <SystemDirectoryServicesProtocolsPackageVersion>5.0.0-rc.1.20428.3</SystemDirectoryServicesProtocolsPackageVersion>
-    <SystemDrawingCommonPackageVersion>5.0.0-rc.1.20428.3</SystemDrawingCommonPackageVersion>
-    <SystemIOPipelinesPackageVersion>5.0.0-rc.1.20428.3</SystemIOPipelinesPackageVersion>
-    <SystemNetHttpJsonPackageVersion>5.0.0-rc.1.20428.3</SystemNetHttpJsonPackageVersion>
-    <SystemNetHttpWinHttpHandlerPackageVersion>5.0.0-rc.1.20428.3</SystemNetHttpWinHttpHandlerPackageVersion>
-    <SystemNetWebSocketsWebSocketProtocolPackageVersion>5.0.0-rc.1.20428.3</SystemNetWebSocketsWebSocketProtocolPackageVersion>
-    <SystemReflectionMetadataPackageVersion>5.0.0-rc.1.20428.3</SystemReflectionMetadataPackageVersion>
-    <SystemResourcesExtensionsPackageVersion>5.0.0-rc.1.20428.3</SystemResourcesExtensionsPackageVersion>
-    <SystemRuntimeCompilerServicesUnsafePackageVersion>5.0.0-rc.1.20428.3</SystemRuntimeCompilerServicesUnsafePackageVersion>
+    <MicrosoftExtensionsDependencyModelPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsDependencyModelPackageVersion>
+    <MicrosoftNETCoreAppInternalPackageVersion>5.0.0-rc.1.20417.14</MicrosoftNETCoreAppInternalPackageVersion>
+    <MicrosoftNETCoreAppRefPackageVersion>5.0.0-rc.1.20417.14</MicrosoftNETCoreAppRefPackageVersion>
+    <MicrosoftNETCoreAppRuntimewinx64PackageVersion>5.0.0-rc.1.20417.14</MicrosoftNETCoreAppRuntimewinx64PackageVersion>
+    <MicrosoftNETCoreBrowserDebugHostTransportPackageVersion>5.0.0-rc.1.20417.14</MicrosoftNETCoreBrowserDebugHostTransportPackageVersion>
+    <MicrosoftWin32RegistryPackageVersion>5.0.0-rc.1.20417.14</MicrosoftWin32RegistryPackageVersion>
+    <MicrosoftWin32SystemEventsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftWin32SystemEventsPackageVersion>
+    <MicrosoftExtensionsCachingAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsCachingAbstractionsPackageVersion>
+    <MicrosoftExtensionsCachingMemoryPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsCachingMemoryPackageVersion>
+    <MicrosoftExtensionsConfigurationAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationAbstractionsPackageVersion>
+    <MicrosoftExtensionsConfigurationBinderPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationBinderPackageVersion>
+    <MicrosoftExtensionsConfigurationCommandLinePackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationCommandLinePackageVersion>
+    <MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationEnvironmentVariablesPackageVersion>
+    <MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationFileExtensionsPackageVersion>
+    <MicrosoftExtensionsConfigurationIniPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationIniPackageVersion>
+    <MicrosoftExtensionsConfigurationJsonPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationJsonPackageVersion>
+    <MicrosoftExtensionsConfigurationPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationPackageVersion>
+    <MicrosoftExtensionsConfigurationUserSecretsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationUserSecretsPackageVersion>
+    <MicrosoftExtensionsConfigurationXmlPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsConfigurationXmlPackageVersion>
+    <MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsDependencyInjectionAbstractionsPackageVersion>
+    <MicrosoftExtensionsDependencyInjectionPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsDependencyInjectionPackageVersion>
+    <MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsFileProvidersAbstractionsPackageVersion>
+    <MicrosoftExtensionsFileProvidersCompositePackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsFileProvidersCompositePackageVersion>
+    <MicrosoftExtensionsFileProvidersPhysicalPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsFileProvidersPhysicalPackageVersion>
+    <MicrosoftExtensionsFileSystemGlobbingPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsFileSystemGlobbingPackageVersion>
+    <MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsHostFactoryResolverSourcesPackageVersion>
+    <MicrosoftExtensionsHostingAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsHostingAbstractionsPackageVersion>
+    <MicrosoftExtensionsHostingPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsHostingPackageVersion>
+    <MicrosoftExtensionsHttpPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsHttpPackageVersion>
+    <MicrosoftExtensionsLoggingAbstractionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingAbstractionsPackageVersion>
+    <MicrosoftExtensionsLoggingConfigurationPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingConfigurationPackageVersion>
+    <MicrosoftExtensionsLoggingConsolePackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingConsolePackageVersion>
+    <MicrosoftExtensionsLoggingDebugPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingDebugPackageVersion>
+    <MicrosoftExtensionsLoggingEventSourcePackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingEventSourcePackageVersion>
+    <MicrosoftExtensionsLoggingEventLogPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingEventLogPackageVersion>
+    <MicrosoftExtensionsLoggingPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingPackageVersion>
+    <MicrosoftExtensionsLoggingTraceSourcePackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsLoggingTraceSourcePackageVersion>
+    <MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsOptionsConfigurationExtensionsPackageVersion>
+    <MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsOptionsDataAnnotationsPackageVersion>
+    <MicrosoftExtensionsOptionsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsOptionsPackageVersion>
+    <MicrosoftExtensionsPrimitivesPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsPrimitivesPackageVersion>
+    <MicrosoftExtensionsInternalTransportPackageVersion>5.0.0-rc.1.20417.14</MicrosoftExtensionsInternalTransportPackageVersion>
+    <SystemComponentModelAnnotationsPackageVersion>5.0.0-rc.1.20417.14</SystemComponentModelAnnotationsPackageVersion>
+    <SystemDiagnosticsDiagnosticSourcePackageVersion>5.0.0-rc.1.20417.14</SystemDiagnosticsDiagnosticSourcePackageVersion>
+    <SystemDiagnosticsEventLogPackageVersion>5.0.0-rc.1.20417.14</SystemDiagnosticsEventLogPackageVersion>
+    <SystemDirectoryServicesProtocolsPackageVersion>5.0.0-rc.1.20417.14</SystemDirectoryServicesProtocolsPackageVersion>
+    <SystemDrawingCommonPackageVersion>5.0.0-rc.1.20417.14</SystemDrawingCommonPackageVersion>
+    <SystemIOPipelinesPackageVersion>5.0.0-rc.1.20417.14</SystemIOPipelinesPackageVersion>
+    <SystemNetHttpJsonPackageVersion>5.0.0-rc.1.20417.14</SystemNetHttpJsonPackageVersion>
+    <SystemNetHttpWinHttpHandlerPackageVersion>5.0.0-rc.1.20417.14</SystemNetHttpWinHttpHandlerPackageVersion>
+    <SystemNetWebSocketsWebSocketProtocolPackageVersion>5.0.0-rc.1.20417.14</SystemNetWebSocketsWebSocketProtocolPackageVersion>
+    <SystemReflectionMetadataPackageVersion>5.0.0-rc.1.20417.14</SystemReflectionMetadataPackageVersion>
+    <SystemResourcesExtensionsPackageVersion>5.0.0-rc.1.20417.14</SystemResourcesExtensionsPackageVersion>
+    <SystemRuntimeCompilerServicesUnsafePackageVersion>5.0.0-rc.1.20417.14</SystemRuntimeCompilerServicesUnsafePackageVersion>
     <!-- System.Security.AccessControl should only be referenced in Dependencies.props and RTMVersions.csproj. -->
-    <SystemSecurityAccessControlPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityAccessControlPackageVersion>
-    <SystemSecurityCryptographyCngPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityCryptographyCngPackageVersion>
-    <SystemSecurityCryptographyPkcsPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityCryptographyPkcsPackageVersion>
-    <SystemSecurityCryptographyXmlPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityCryptographyXmlPackageVersion>
-    <SystemSecurityPermissionsPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityPermissionsPackageVersion>
-    <SystemSecurityPrincipalWindowsPackageVersion>5.0.0-rc.1.20428.3</SystemSecurityPrincipalWindowsPackageVersion>
-    <SystemServiceProcessServiceControllerPackageVersion>5.0.0-rc.1.20428.3</SystemServiceProcessServiceControllerPackageVersion>
-    <SystemTextEncodingsWebPackageVersion>5.0.0-rc.1.20428.3</SystemTextEncodingsWebPackageVersion>
-    <SystemTextJsonPackageVersion>5.0.0-rc.1.20428.3</SystemTextJsonPackageVersion>
-    <SystemThreadingChannelsPackageVersion>5.0.0-rc.1.20428.3</SystemThreadingChannelsPackageVersion>
-    <SystemWindowsExtensionsPackageVersion>5.0.0-rc.1.20428.3</SystemWindowsExtensionsPackageVersion>
+    <SystemSecurityAccessControlPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityAccessControlPackageVersion>
+    <SystemSecurityCryptographyCngPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityCryptographyCngPackageVersion>
+    <SystemSecurityCryptographyPkcsPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityCryptographyPkcsPackageVersion>
+    <SystemSecurityCryptographyXmlPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityCryptographyXmlPackageVersion>
+    <SystemSecurityPermissionsPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityPermissionsPackageVersion>
+    <SystemSecurityPrincipalWindowsPackageVersion>5.0.0-rc.1.20417.14</SystemSecurityPrincipalWindowsPackageVersion>
+    <SystemServiceProcessServiceControllerPackageVersion>5.0.0-rc.1.20417.14</SystemServiceProcessServiceControllerPackageVersion>
+    <SystemTextEncodingsWebPackageVersion>5.0.0-rc.1.20417.14</SystemTextEncodingsWebPackageVersion>
+    <SystemTextJsonPackageVersion>5.0.0-rc.1.20417.14</SystemTextJsonPackageVersion>
+    <SystemThreadingChannelsPackageVersion>5.0.0-rc.1.20417.14</SystemThreadingChannelsPackageVersion>
+    <SystemWindowsExtensionsPackageVersion>5.0.0-rc.1.20417.14</SystemWindowsExtensionsPackageVersion>
     <!-- Only listed explicitly to workaround https://github.com/dotnet/cli/issues/10528 -->
-    <MicrosoftNETCorePlatformsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftNETCorePlatformsPackageVersion>
+    <MicrosoftNETCorePlatformsPackageVersion>5.0.0-rc.1.20417.14</MicrosoftNETCorePlatformsPackageVersion>
     <!-- Packages from dotnet/blazor -->
     <MicrosoftAspNetCoreComponentsWebAssemblyRuntimePackageVersion>3.2.0</MicrosoftAspNetCoreComponentsWebAssemblyRuntimePackageVersion>
     <!-- Packages from dotnet/efcore -->
-    <dotnetefPackageVersion>5.0.0-rc.1.20428.3</dotnetefPackageVersion>
-    <MicrosoftEntityFrameworkCoreInMemoryPackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreInMemoryPackageVersion>
-    <MicrosoftEntityFrameworkCoreRelationalPackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreRelationalPackageVersion>
-    <MicrosoftEntityFrameworkCoreSqlitePackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreSqlitePackageVersion>
-    <MicrosoftEntityFrameworkCoreSqlServerPackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreSqlServerPackageVersion>
-    <MicrosoftEntityFrameworkCoreToolsPackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreToolsPackageVersion>
-    <MicrosoftEntityFrameworkCorePackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCorePackageVersion>
-    <MicrosoftEntityFrameworkCoreDesignPackageVersion>5.0.0-rc.1.20428.3</MicrosoftEntityFrameworkCoreDesignPackageVersion>
+    <dotnetefPackageVersion>6.0.0-alpha.1.20417.8</dotnetefPackageVersion>
+    <MicrosoftEntityFrameworkCoreInMemoryPackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreInMemoryPackageVersion>
+    <MicrosoftEntityFrameworkCoreRelationalPackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreRelationalPackageVersion>
+    <MicrosoftEntityFrameworkCoreSqlitePackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreSqlitePackageVersion>
+    <MicrosoftEntityFrameworkCoreSqlServerPackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreSqlServerPackageVersion>
+    <MicrosoftEntityFrameworkCoreToolsPackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreToolsPackageVersion>
+    <MicrosoftEntityFrameworkCorePackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCorePackageVersion>
+    <MicrosoftEntityFrameworkCoreDesignPackageVersion>6.0.0-alpha.1.20417.8</MicrosoftEntityFrameworkCoreDesignPackageVersion>
   </PropertyGroup>
   <!--
 

+ 2 - 3
src/Components/Components/src/ComponentBase.cs

@@ -200,9 +200,8 @@ namespace Microsoft.AspNetCore.Components
         /// <returns>A <see cref="Task"/> that completes when the component has finished updating and rendering itself.</returns>
         /// <remarks>
         /// <para>
-        /// The <see cref="SetParametersAsync(ParameterView)"/> method should be passed the entire set of parameter values each
-        /// time <see cref="SetParametersAsync(ParameterView)"/> is called. It not required that the caller supply a parameter
-        /// value for all parameters that are logically understood by the component.
+        /// Parameters are passed when <see cref="SetParametersAsync(ParameterView)"/> is called. It is not required that 
+        /// the caller supply a parameter value for all of the parameters that are logically understood by the component.
         /// </para>
         /// <para>
         /// The default implementation of <see cref="SetParametersAsync(ParameterView)"/> will set the value of each property

+ 2 - 2
src/Framework/Directory.Build.props

@@ -7,8 +7,8 @@
     <PlatformManifestFileName>PlatformManifest.txt</PlatformManifestFileName>
     <PlatformManifestOutputPath>$(ArtifactsObjDir)$(PlatformManifestFileName)</PlatformManifestOutputPath>
 
-    <!-- Platform manifest and package override metatdata -->
-    <ReferencePackSharedFxVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).0</ReferencePackSharedFxVersion>
+    <!-- Platform manifest and package override metadata -->
+    <ReferencePackSharedFxVersion>$(AspNetCoreMajorMinorVersion).0</ReferencePackSharedFxVersion>
     <ReferencePackSharedFxVersion Condition="'$(VersionSuffix)' != ''">$(ReferencePackSharedFxVersion)-$(VersionSuffix)</ReferencePackSharedFxVersion>
   </PropertyGroup>
 

+ 1 - 1
src/Installers/Debian/Runtime/Debian.Runtime.debproj

@@ -8,7 +8,7 @@
     <PackageContentRoot>$(SharedFrameworkLayoutRoot)</PackageContentRoot>
 
     <!-- CLI would take a dependency such as 'aspnetcore-runtime-M.N >= M.N.P'. Here M.N is part of the id and M.N.P is the PackageVersion -->
-    <PackageId>$(RuntimeInstallerBaseName)-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
+    <PackageId>$(RuntimeInstallerBaseName)-$(AspNetCoreMajorMinorVersion)</PackageId>
 
     <!-- Needed some creativity to convert the PackageVersion M.N.P-PreReleaseVersionLabel-Build to the installer version M.N.P~PreReleaseVersionLabel-Build, The conditional handles stabilized builds -->
     <DotnetRuntimeDependencyVersion>$(MicrosoftNETCoreAppRuntimeVersion)</DotnetRuntimeDependencyVersion>

+ 2 - 2
src/Installers/Debian/TargetingPack/Debian.TargetingPack.debproj

@@ -8,10 +8,10 @@
     <PackageContentRoot>$(TargetingPackLayoutRoot)</PackageContentRoot>
 
     <!-- CLI would take a dependency such as 'aspnetcore-targeting-pack-M.N >= M.N.P'. Here M.N is part of the id and M.N.P is the PackageVersion -->
-    <PackageId>$(TargetingPackInstallerBaseName)-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
+    <PackageId>$(TargetingPackInstallerBaseName)-$(AspNetCoreMajorMinorVersion)</PackageId>
 
     <PackageSummary>ASP.NET Core Targeting Pack</PackageSummary>
-    <PackageDescription>Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets.</PackageDescription>
+    <PackageDescription>Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets.</PackageDescription>
 
     <!-- Needed some creativity to convert the PackageVersion M.N.P-PreReleaseVersionLabel-Build to the installer version M.N.P~PreReleaseVersionLabel-Build, The conditional handles stabilized builds -->
     <DotnetTargetingPackDependencyVersion>$(MicrosoftNETCoreAppRefPackageVersion)</DotnetTargetingPackDependencyVersion>

+ 3 - 3
src/Installers/Rpm/Rpm.Runtime.Common.targets

@@ -4,8 +4,8 @@
   <PropertyGroup>
     <!-- installer versions -->
     <!-- CLI would take a dependency such as 'aspnetcore-runtime-M.N >= M.N.P'. Here M.N is the part of the id and M.N.P is the package version -->
-    <PackageId>$(RuntimeInstallerBaseName)-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
-    <PackageVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion)</PackageVersion>
+    <PackageId>$(RuntimeInstallerBaseName)-$(AspNetCoreMajorMinorVersion)</PackageId>
+    <PackageVersion>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion)</PackageVersion>
 
     <!-- Set package revision to '1' for RTM releases, but include the build number in pre-releases -->
     <PackageRevision Condition=" '$(VersionSuffix)' == '' ">1</PackageRevision>
@@ -24,6 +24,6 @@
     </ProjectReference>
 
     <InstallerOwnedDirectory Include="$(RpmPackageInstallRoot)shared/Microsoft.AspNetCore.App" />
-    <RpmDependency Include="dotnet-runtime-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)" Version="$(MicrosoftNETCoreAppRuntimeVersion.Split('-')[0])" />
+    <RpmDependency Include="dotnet-runtime-$(AspNetCoreMajorMinorVersion)" Version="$(MicrosoftNETCoreAppRuntimeVersion.Split('-')[0])" />
   </ItemGroup>
 </Project>

+ 3 - 3
src/Installers/Rpm/TargetingPack/Rpm.TargetingPack.rpmproj

@@ -8,10 +8,10 @@
 
     <!-- installer versions -->
     <!-- CLI would take a dependency such as 'aspnetcore-targeting-pack-M.N >= M.N.P'. Here M.N is the part of the id and M.N.P is the package version -->
-    <PackageId>$(TargetingPackInstallerBaseName)-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
+    <PackageId>$(TargetingPackInstallerBaseName)-$(AspNetCoreMajorMinorVersion)</PackageId>
 
     <PackageSummary>ASP.NET Core Targeting Pack</PackageSummary>
-    <PackageDescription>Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets.</PackageDescription>
+    <PackageDescription>Provides a default set of APIs for building an ASP.NET Core $(AspNetCoreMajorMinorVersion) application. Contains reference assemblies, documentation, and other design-time assets.</PackageDescription>
   </PropertyGroup>
 
   <ItemGroup>
@@ -21,7 +21,7 @@
     </ProjectReference>
 
     <InstallerOwnedDirectory Include="$(RpmPackageInstallRoot)packs/$(TargetingPackName)/" />
-    <RpmDependency Include="dotnet-targeting-pack-$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)" Version="$(MicrosoftNETCoreAppRefPackageVersion.Split('-')[0])" />
+    <RpmDependency Include="dotnet-targeting-pack-$(AspNetCoreMajorMinorVersion)" Version="$(MicrosoftNETCoreAppRefPackageVersion.Split('-')[0])" />
   </ItemGroup>
 
   <Import Project="$(MSBuildToolsPath)\Microsoft.Common.targets" />

+ 1 - 1
src/Installers/Windows/AspNetCoreModule-Setup/Directory.Build.props

@@ -15,7 +15,7 @@
     <BLDNUMMINOR>$(BUILD_MINOR)</BLDNUMMINOR>
 
     <!-- ANCM msi version is prepended with a 1 due to previous msi versions starting with 8.x.x.0 -->
-    <ANCMFolderVersion>1$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(BUILD_MAJOR)</ANCMFolderVersion>
+    <ANCMFolderVersion>1$(AspNetCoreMajorMinorVersion).$(BUILD_MAJOR)</ANCMFolderVersion>
     <ANCMMsiVersion>$(ANCMFolderVersion).0</ANCMMsiVersion>
 
     <!-- The handler version in the M.A.AspNetCoreV2 nuget package. Today, this is hard coded to 2.0.0

+ 3 - 3
src/Installers/Windows/Wix.targets

@@ -2,11 +2,11 @@
   <!-- Set versioning properties after Arcade SDK targets have been imported. -->
   <PropertyGroup>
     <!-- Used for generating stable upgrade codes for bundles -->
-    <Version>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion).0</Version>
+    <Version>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion).0</Version>
     <!-- Actual upgrade code used in bundles to ensure upgrades withing a version band, e.g. 3.0.0.xxx -->
     <_FileRevisionVersion>$(VersionSuffixDateStamp)</_FileRevisionVersion>
     <_FileRevisionVersion Condition=" '$(_FileRevisionVersion)' == '' ">42424</_FileRevisionVersion>
-    <BundleVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion).$(_FileRevisionVersion)</BundleVersion>
+    <BundleVersion>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion).$(_FileRevisionVersion)</BundleVersion>
 
     <DefineConstants>$(DefineConstants);MajorVersion=$(AspNetCoreMajorVersion)</DefineConstants>
     <DefineConstants>$(DefineConstants);MinorVersion=$(AspNetCoreMinorVersion)</DefineConstants>
@@ -44,7 +44,7 @@
          the upgrade code. Bundle upgrades pivot on Major.Minor.Patch changes. For example, 3.0.1-preview 1 can upgrade to 3.0.1-preview 8, but 3.0.1
          cannot upgrade to 3.0.2 or 3.1. -->
     <PropertyGroup>
-      <BundleGuidInputs>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).$(AspNetCorePatchVersion);$(Platform)</BundleGuidInputs>
+      <BundleGuidInputs>$(AspNetCoreMajorMinorVersion).$(AspNetCorePatchVersion);$(Platform)</BundleGuidInputs>
     </PropertyGroup>
     <GenerateGuid NamespaceGuid="$(NamespaceGuid)" Values="$(BundleGuidInputs)">
       <Output TaskParameter="Guid" PropertyName="BundleProviderKey" />

+ 5 - 13
src/Mvc/Mvc.Core/src/Builder/ControllerEndpointRouteBuilderExtensions.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -506,18 +506,10 @@ namespace Microsoft.AspNetCore.Builder
             EnsureControllerServices(endpoints);
 
             // Called for side-effect to make sure that the data source is registered.
-            GetOrCreateDataSource(endpoints).CreateInertEndpoints = true;
-
-            endpoints.Map(
-                pattern, 
-                context =>
-                {
-                    throw new InvalidOperationException("This endpoint is not expected to be executed directly.");
-                })
-                .Add(b =>
-                {
-                    b.Metadata.Add(new DynamicControllerRouteValueTransformerMetadata(typeof(TTransformer), state));
-                });
+            var controllerDataSource = GetOrCreateDataSource(endpoints);
+            
+            // The data source is just used to share the common order with conventionally routed actions.
+            controllerDataSource.AddDynamicControllerEndpoint(endpoints, pattern, typeof(TTransformer), state);
         }
 
         private static DynamicControllerMetadata CreateDynamicControllerMetadata(string action, string controller, string area)

+ 1 - 0
src/Mvc/Mvc.Core/src/DependencyInjection/MvcCoreServiceCollectionExtensions.cs

@@ -269,6 +269,7 @@ namespace Microsoft.Extensions.DependencyInjection
             //
             // Endpoint Routing / Endpoints
             //
+            services.TryAddSingleton<OrderedEndpointsSequenceProvider>();
             services.TryAddSingleton<ControllerActionEndpointDataSource>();
             services.TryAddSingleton<ActionEndpointFactory>();
             services.TryAddSingleton<DynamicControllerEndpointSelector>();

+ 26 - 0
src/Mvc/Mvc.Core/src/DependencyInjection/OrderedEndpointsSequenceProvider.cs

@@ -0,0 +1,26 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+namespace Microsoft.AspNetCore.Mvc.Infrastructure
+{
+    internal class OrderedEndpointsSequenceProvider
+    {
+        private object Lock = new object();
+
+        // In traditional conventional routing setup, the routes defined by a user have a order
+        // defined by how they are added into the list. We would like to maintain the same order when building
+        // up the endpoints too.
+        //
+        // Start with an order of '1' for conventional routes as attribute routes have a default order of '0'.
+        // This is for scenarios dealing with migrating existing Router based code to Endpoint Routing world.
+        private int _current = 1;
+
+        public int GetNext()
+        {
+            lock (Lock)
+            {
+                return _current++;
+            }
+        }
+    }
+}

+ 27 - 14
src/Mvc/Mvc.Core/src/Routing/ControllerActionEndpointDataSource.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -15,27 +15,19 @@ namespace Microsoft.AspNetCore.Mvc.Routing
     internal class ControllerActionEndpointDataSource : ActionEndpointDataSourceBase
     {
         private readonly ActionEndpointFactory _endpointFactory;
+        private readonly OrderedEndpointsSequenceProvider _orderSequence;
         private readonly List<ConventionalRouteEntry> _routes;
 
-        private int _order;
-
         public ControllerActionEndpointDataSource(
             IActionDescriptorCollectionProvider actions,
-            ActionEndpointFactory endpointFactory)
+            ActionEndpointFactory endpointFactory,
+            OrderedEndpointsSequenceProvider orderSequence)
             : base(actions)
         {
             _endpointFactory = endpointFactory;
-
+            _orderSequence = orderSequence;
             _routes = new List<ConventionalRouteEntry>();
 
-            // In traditional conventional routing setup, the routes defined by a user have a order
-            // defined by how they are added into the list. We would like to maintain the same order when building
-            // up the endpoints too.
-            //
-            // Start with an order of '1' for conventional routes as attribute routes have a default order of '0'.
-            // This is for scenarios dealing with migrating existing Router based code to Endpoint Routing world.
-            _order = 1;
-
             DefaultBuilder = new ControllerActionEndpointConventionBuilder(Lock, Conventions);
 
             // IMPORTANT: this needs to be the last thing we do in the constructor.
@@ -59,7 +51,7 @@ namespace Microsoft.AspNetCore.Mvc.Routing
             lock (Lock)
             {
                 var conventions = new List<Action<EndpointBuilder>>();
-                _routes.Add(new ConventionalRouteEntry(routeName, pattern, defaults, constraints, dataTokens, _order++, conventions));
+                _routes.Add(new ConventionalRouteEntry(routeName, pattern, defaults, constraints, dataTokens, _orderSequence.GetNext(), conventions));
                 return new ControllerActionEndpointConventionBuilder(Lock, conventions);
             }
         }
@@ -108,6 +100,27 @@ namespace Microsoft.AspNetCore.Mvc.Routing
 
             return endpoints;
         }
+
+        internal void AddDynamicControllerEndpoint(IEndpointRouteBuilder endpoints, string pattern, Type transformerType, object state)
+        {
+            CreateInertEndpoints = true;
+            lock (Lock)
+            {
+                var order = _orderSequence.GetNext();
+
+                endpoints.Map(
+                    pattern,
+                    context =>
+                    {
+                        throw new InvalidOperationException("This endpoint is not expected to be executed directly.");
+                    })
+                    .Add(b =>
+                    {
+                        ((RouteEndpointBuilder)b).Order = order;
+                        b.Metadata.Add(new DynamicControllerRouteValueTransformerMetadata(transformerType, state));
+                    });
+            }
+        }
     }
 }
 

+ 2 - 2
src/Mvc/Mvc.Core/test/Routing/ControllerActionEndpointDataSourceTest.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -385,7 +385,7 @@ namespace Microsoft.AspNetCore.Mvc.Routing
 
         private protected override ActionEndpointDataSourceBase CreateDataSource(IActionDescriptorCollectionProvider actions, ActionEndpointFactory endpointFactory)
         {
-            return new ControllerActionEndpointDataSource(actions, endpointFactory);
+            return new ControllerActionEndpointDataSource(actions, endpointFactory, new OrderedEndpointsSequenceProvider());
         }
 
         protected override ActionDescriptor CreateActionDescriptor(

+ 2 - 11
src/Mvc/Mvc.RazorPages/src/Builder/RazorPagesEndpointRouteBuilderExtensions.cs

@@ -337,18 +337,9 @@ namespace Microsoft.AspNetCore.Builder
             EnsureRazorPagesServices(endpoints);
 
             // Called for side-effect to make sure that the data source is registered.
-            GetOrCreateDataSource(endpoints).CreateInertEndpoints = true;
+            var dataSource = GetOrCreateDataSource(endpoints);
 
-            endpoints.Map(
-                pattern,
-                context =>
-                {
-                    throw new InvalidOperationException("This endpoint is not expected to be executed directly.");
-                })
-                .Add(b =>
-                {
-                    b.Metadata.Add(new DynamicPageRouteValueTransformerMetadata(typeof(TTransformer), state));
-                });
+            dataSource.AddDynamicPageEndpoint(endpoints, pattern, typeof(TTransformer), state);
         }
 
         private static DynamicPageMetadata CreateDynamicPageMetadata(string page, string area)

+ 29 - 3
src/Mvc/Mvc.RazorPages/src/Infrastructure/PageActionEndpointDataSource.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -8,18 +8,23 @@ using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc.Abstractions;
 using Microsoft.AspNetCore.Mvc.Infrastructure;
 using Microsoft.AspNetCore.Mvc.Routing;
+using Microsoft.AspNetCore.Routing;
 
 namespace Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure
 {
     internal class PageActionEndpointDataSource : ActionEndpointDataSourceBase
     {
         private readonly ActionEndpointFactory _endpointFactory;
+        private readonly OrderedEndpointsSequenceProvider _orderSequence;
 
-        public PageActionEndpointDataSource(IActionDescriptorCollectionProvider actions, ActionEndpointFactory endpointFactory)
+        public PageActionEndpointDataSource(
+            IActionDescriptorCollectionProvider actions,
+            ActionEndpointFactory endpointFactory,
+            OrderedEndpointsSequenceProvider orderedEndpoints)
             : base(actions)
         {
             _endpointFactory = endpointFactory;
-
+            _orderSequence = orderedEndpoints;
             DefaultBuilder = new PageActionEndpointConventionBuilder(Lock, Conventions);
 
             // IMPORTANT: this needs to be the last thing we do in the constructor.
@@ -47,6 +52,27 @@ namespace Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure
 
             return endpoints;
         }
+
+        internal void AddDynamicPageEndpoint(IEndpointRouteBuilder endpoints, string pattern, Type transformerType, object state)
+        {
+            CreateInertEndpoints = true;
+            lock (Lock)
+            {
+                var order = _orderSequence.GetNext();
+
+                endpoints.Map(
+                    pattern,
+                    context =>
+                    {
+                        throw new InvalidOperationException("This endpoint is not expected to be executed directly.");
+                    })
+                    .Add(b =>
+                    {
+                        ((RouteEndpointBuilder)b).Order = order;
+                        b.Metadata.Add(new DynamicPageRouteValueTransformerMetadata(transformerType, state));
+                    });
+            }
+        }
     }
 }
 

+ 2 - 2
src/Mvc/Mvc.RazorPages/test/Infrastructure/PageActionEndpointDataSourceTest.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -92,7 +92,7 @@ namespace Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure
 
         private protected override ActionEndpointDataSourceBase CreateDataSource(IActionDescriptorCollectionProvider actions, ActionEndpointFactory endpointFactory)
         {
-            return new PageActionEndpointDataSource(actions, endpointFactory);
+            return new PageActionEndpointDataSource(actions, endpointFactory, new OrderedEndpointsSequenceProvider());
         }
 
         protected override ActionDescriptor CreateActionDescriptor(

+ 3 - 2
src/Mvc/benchmarks/Microsoft.AspNetCore.Mvc.Performance/ControllerActionEndpointDatasourceBenchmark.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -110,7 +110,8 @@ namespace Microsoft.AspNetCore.Mvc.Performance
         {
             var dataSource = new ControllerActionEndpointDataSource(
                 actionDescriptorCollectionProvider,
-                new ActionEndpointFactory(new MockRoutePatternTransformer()));
+                new ActionEndpointFactory(new MockRoutePatternTransformer()),
+                new OrderedEndpointsSequenceProvider());
 
             return dataSource;
         }

+ 8 - 2
src/Mvc/test/Mvc.FunctionalTests/HtmlGenerationTest.cs

@@ -12,6 +12,7 @@ using System.Text;
 using System.Threading.Tasks;
 using Microsoft.AspNetCore.Hosting;
 using Microsoft.AspNetCore.Mvc.Testing;
+using Microsoft.AspNetCore.Testing;
 using Xunit;
 
 namespace Microsoft.AspNetCore.Mvc.FunctionalTests
@@ -61,8 +62,6 @@ namespace Microsoft.AspNetCore.Mvc.FunctionalTests
                     { "EmployeeList", "/HtmlGeneration_Home/EmployeeList" },
                     // Testing the EnvironmentTagHelper
                     { "Environment", null },
-                    // Testing the ImageTagHelper
-                    { "Image", null },
                     // Testing InputTagHelper with File
                     { "Input", null },
                     // Testing the LinkTagHelper
@@ -138,6 +137,13 @@ namespace Microsoft.AspNetCore.Mvc.FunctionalTests
             }
         }
 
+        [Fact]
+        [QuarantinedTest("https://github.com/dotnet/aspnetcore/issues/25206")]
+        public async Task HtmlGenerationWebSite_GeneratesExpectedResults_WithImageData()
+        {
+            await HtmlGenerationWebSite_GeneratesExpectedResults("image", antiforgeryPath: null);
+        }
+
         [Fact]
         public async Task HtmlGenerationWebSite_LinkGeneration_With21CompatibilityBehavior()
         {

+ 165 - 0
src/Mvc/test/Mvc.FunctionalTests/RoutingDynamicOrderTest.cs

@@ -0,0 +1,165 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+using System;
+using System.Collections;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net;
+using System.Net.Http;
+using System.Net.Http.Json;
+using System.Threading.Tasks;
+using Microsoft.AspNetCore.Hosting;
+using Microsoft.AspNetCore.Mvc.Testing;
+using RoutingWebSite;
+using Xunit;
+
+namespace Microsoft.AspNetCore.Mvc.FunctionalTests
+{
+    public class RoutingDynamicOrderTest : IClassFixture<MvcTestFixture<RoutingWebSite.StartupForDynamic>>
+    {
+        public RoutingDynamicOrderTest(MvcTestFixture<RoutingWebSite.StartupForDynamic> fixture)
+        {
+            Factory = fixture.Factories.FirstOrDefault() ?? fixture.WithWebHostBuilder(ConfigureWebHostBuilder);
+        }
+
+        private static void ConfigureWebHostBuilder(IWebHostBuilder builder) => builder.UseStartup<RoutingWebSite.StartupForDynamicOrder>();
+
+        public WebApplicationFactory<StartupForDynamic> Factory { get; }
+
+        [Fact]
+        public async Task PrefersAttributeRoutesOverDynamicControllerRoutes()
+        {
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.AttributeRouteDynamicRoute));
+
+            var client = factory.CreateClient();
+
+            // Arrange
+            var url = "http://localhost/attribute-dynamic-order/Controller=Home,Action=Index";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadFromJsonAsync<RouteInfo>();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.Equal("AttributeRouteSlug", content.RouteName);
+        }
+
+        [Fact]
+        public async Task DynamicRoutesAreMatchedInDefinitionOrderOverPrecedence()
+        {
+            AppContext.SetSwitch("Microsoft.AspNetCore.Routing.UseCorrectCatchAllBehavior", isEnabled: true);
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.MultipleDynamicRoute));
+
+            var client = factory.CreateClient();
+
+            // Arrange
+            var url = "http://localhost/dynamic-order/specific/Controller=Home,Action=Index";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadFromJsonAsync<RouteInfo>();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.True(content.RouteValues.TryGetValue("identifier", out var identifier));
+            Assert.Equal("slug", identifier);
+        }
+
+        [Fact]
+        public async Task ConventionalRoutesDefinedEarlierWinOverDynamicControllerRoutes()
+        {
+            AppContext.SetSwitch("Microsoft.AspNetCore.Routing.UseCorrectCatchAllBehavior", isEnabled: true);
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.ConventionalRouteDynamicRoute));
+
+            var client = factory.CreateClient();
+
+            // Arrange
+            var url = "http://localhost/conventional-dynamic-order-before";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadFromJsonAsync<RouteInfo>();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.False(content.RouteValues.TryGetValue("identifier", out var identifier));
+        }
+
+        [Fact]
+        public async Task ConventionalRoutesDefinedLaterLooseToDynamicControllerRoutes()
+        {
+            AppContext.SetSwitch("Microsoft.AspNetCore.Routing.UseCorrectCatchAllBehavior", isEnabled: true);
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.ConventionalRouteDynamicRoute));
+
+            var client = factory.CreateClient();
+
+            // Arrange
+            var url = "http://localhost/conventional-dynamic-order-after";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadFromJsonAsync<RouteInfo>();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.True(content.RouteValues.TryGetValue("identifier", out var identifier));
+            Assert.Equal("slug", identifier);
+        }
+
+        [Fact]
+        public async Task DynamicPagesDefinedEarlierWinOverDynamicControllers()
+        {
+            AppContext.SetSwitch("Microsoft.AspNetCore.Routing.UseCorrectCatchAllBehavior", isEnabled: true);
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.DynamicControllerAndPages));
+
+            var client = factory.CreateClient();
+            // Arrange
+            var url = "http://localhost/dynamic-order-page-controller-before";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadAsStringAsync();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.Equal("Hello from dynamic page: /DynamicPagebefore", content);
+        }
+
+        [Fact]
+        public async Task DynamicPagesDefinedLaterLooseOverDynamicControllers()
+        {
+            AppContext.SetSwitch("Microsoft.AspNetCore.Routing.UseCorrectCatchAllBehavior", isEnabled: true);
+            var factory = Factory
+                .WithWebHostBuilder(b => b.UseSetting("Scenario", RoutingWebSite.StartupForDynamicOrder.DynamicOrderScenarios.DynamicControllerAndPages));
+
+            var client = factory.CreateClient();
+
+            // Arrange
+            var url = "http://localhost/dynamic-order-page-controller-after";
+            var request = new HttpRequestMessage(HttpMethod.Get, url);
+
+            // Act
+            var response = await client.SendAsync(request);
+            var content = await response.Content.ReadFromJsonAsync<RouteInfo>();
+
+            // Assert
+            Assert.Equal(HttpStatusCode.OK, response.StatusCode);
+            Assert.True(content.RouteValues.TryGetValue("identifier", out var identifier));
+            Assert.Equal("controller", identifier);
+        }
+
+        private record RouteInfo(string RouteName, IDictionary<string,string> RouteValues);
+    }
+}

+ 30 - 0
src/Mvc/test/WebSites/RoutingWebSite/Controllers/DynamicOrderController.cs

@@ -0,0 +1,30 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using Microsoft.AspNetCore.Mvc;
+
+namespace Mvc.RoutingWebSite.Controllers
+{
+    public class DynamicOrderController : Controller
+    {
+        private readonly TestResponseGenerator _generator;
+
+        public DynamicOrderController(TestResponseGenerator generator)
+        {
+            _generator = generator;
+        }
+
+        [HttpGet("attribute-dynamic-order/{**slug}", Name = "AttributeRouteSlug")]
+        public IActionResult Get(string slug)
+        {
+            return _generator.Generate(Url.RouteUrl("AttributeRouteSlug", new { slug }));
+        }
+
+        [HttpGet]
+        public IActionResult Index()
+        {
+            return _generator.Generate(Url.RouteUrl(null, new { controller = "DynamicOrder", action = "Index" }));
+        }
+    }
+}

+ 1 - 1
src/Mvc/test/WebSites/RoutingWebSite/Pages/DynamicPage.cshtml

@@ -1,3 +1,3 @@
 @page
 @model RoutingWebSite.Pages.DynamicPageModel
-Hello from dynamic page: @Url.Page("")
+Hello from dynamic page: @Url.Page("")@RouteData.Values["identifier"]

+ 132 - 0
src/Mvc/test/WebSites/RoutingWebSite/StartupForDynamicOrder.cs

@@ -0,0 +1,132 @@
+// Copyright (c) .NET Foundation. All rights reserved.
+// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
+
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+using Microsoft.AspNetCore.Builder;
+using Microsoft.AspNetCore.Http;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Mvc.Infrastructure;
+using Microsoft.AspNetCore.Mvc.Routing;
+using Microsoft.AspNetCore.Routing;
+using Microsoft.Extensions.Configuration;
+using Microsoft.Extensions.DependencyInjection;
+
+namespace RoutingWebSite
+{
+    // For by tests for dynamic routing to pages/controllers
+    public class StartupForDynamicOrder
+    {
+        public static class DynamicOrderScenarios
+        {
+            public const string AttributeRouteDynamicRoute = nameof(AttributeRouteDynamicRoute);
+            public const string MultipleDynamicRoute = nameof(MultipleDynamicRoute);
+            public const string ConventionalRouteDynamicRoute = nameof(ConventionalRouteDynamicRoute);
+            public const string DynamicControllerAndPages = nameof(DynamicControllerAndPages);
+        }
+
+        public IConfiguration Configuration { get; }
+
+        public StartupForDynamicOrder(IConfiguration configuration)
+        {
+            Configuration = configuration;
+        }
+
+        public void ConfigureServices(IServiceCollection services)
+        {
+            services
+                .AddMvc()
+                .AddNewtonsoftJson()
+                .SetCompatibilityVersion(CompatibilityVersion.Latest);
+
+            services.AddTransient<Transformer>();
+            services.AddScoped<TestResponseGenerator>();
+            services.AddSingleton<IActionContextAccessor, ActionContextAccessor>();
+
+            // Used by some controllers defined in this project.
+            services.Configure<RouteOptions>(options => options.ConstraintMap["slugify"] = typeof(SlugifyParameterTransformer));
+        }
+
+        public void Configure(IApplicationBuilder app)
+        {
+            var scenario = Configuration.GetValue<string>("Scenario");
+            app.UseRouting();
+            app.UseEndpoints(endpoints =>
+            {
+                // Route order definition is important for all these routes:
+                switch (scenario)
+                {
+                    case DynamicOrderScenarios.AttributeRouteDynamicRoute:
+                        endpoints.MapDynamicControllerRoute<Transformer>("attribute-dynamic-order/{**slug}", new TransformerState() { Identifier = "slug" });
+                        endpoints.MapControllers();
+                        break;
+                    case DynamicOrderScenarios.ConventionalRouteDynamicRoute:
+                        endpoints.MapControllerRoute(null, "{**conventional-dynamic-order-before:regex(^((?!conventional\\-dynamic\\-order\\-after).)*$)}", new { controller = "DynamicOrder", action = "Index" });
+                        endpoints.MapDynamicControllerRoute<Transformer>("{conventional-dynamic-order}", new TransformerState() { Identifier = "slug" });
+                        endpoints.MapControllerRoute(null, "conventional-dynamic-order-after", new { controller = "DynamicOrder", action = "Index" });
+                        break;
+                    case DynamicOrderScenarios.MultipleDynamicRoute:
+                        endpoints.MapDynamicControllerRoute<Transformer>("dynamic-order/{**slug}", new TransformerState() { Identifier = "slug" });
+                        endpoints.MapDynamicControllerRoute<Transformer>("dynamic-order/specific/{**slug}", new TransformerState() { Identifier = "specific" });
+                        break;
+                    case DynamicOrderScenarios.DynamicControllerAndPages:
+                        endpoints.MapDynamicPageRoute<Transformer>("{**dynamic-order-page-controller-before:regex(^((?!dynamic\\-order\\-page\\-controller\\-after).)*$)}", new TransformerState() { Identifier = "before", ForPages = true });
+                        endpoints.MapDynamicControllerRoute<Transformer>("{dynamic-order-page-controller}", new TransformerState() { Identifier = "controller" });
+                        endpoints.MapDynamicPageRoute<Transformer>("dynamic-order-page-controller-after", new TransformerState() { Identifier = "after", ForPages = true });
+                        break;
+                    default:
+                        throw new InvalidOperationException("Invalid scenario configuration.");
+                }
+            });
+
+            app.Map("/afterrouting", b => b.Run(c =>
+            {
+                return c.Response.WriteAsync("Hello from middleware after routing");
+            }));
+        }
+
+        private class TransformerState
+        {
+            public string Identifier { get; set; }
+            public bool ForPages { get; set; }
+        }
+
+        private class Transformer : DynamicRouteValueTransformer
+        {
+            // Turns a format like `controller=Home,action=Index` into an RVD
+            public override ValueTask<RouteValueDictionary> TransformAsync(HttpContext httpContext, RouteValueDictionary values)
+            {
+                var kvps = ((string)values?["slug"])?.Split("/")?.LastOrDefault()?.Split(",") ?? Array.Empty<string>();
+
+                // Go to index by default if the route doesn't follow the slug pattern, we want to make sure always match to
+                // test the order is applied
+                var state = (TransformerState)State;
+                var results = new RouteValueDictionary();
+                if (!state.ForPages)
+                {
+                    results["controller"] = "Home";
+                    results["action"] = "Index";
+                }
+                else
+                {
+                    results["Page"] = "/DynamicPage";
+                }
+
+                foreach (var kvp in kvps)
+                {
+                    var split = kvp.Split("=");
+                    if (split.Length == 2)
+                    {
+                        results[split[0]] = split[1];
+                    }
+                }
+
+                results["identifier"] = ((TransformerState)State).Identifier;
+
+                return new ValueTask<RouteValueDictionary>(results);
+            }
+        }
+    }
+}

+ 1 - 1
src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj

@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
-    <PackageId>Microsoft.DotNet.Web.ProjectTemplates.$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
+    <PackageId>Microsoft.DotNet.Web.ProjectTemplates.$(AspNetCoreMajorMinorVersion)</PackageId>
     <Description>ASP.NET Core Web Template Pack for Microsoft Template Engine</Description>
     <ComponentsWebAssemblyProjectsRoot>$(RepoRoot)src\Components\WebAssembly\</ComponentsWebAssemblyProjectsRoot>
   </PropertyGroup>

+ 1 - 1
src/ProjectTemplates/Web.Spa.ProjectTemplates/Microsoft.DotNet.Web.Spa.ProjectTemplates.csproj

@@ -2,7 +2,7 @@
 
   <PropertyGroup>
     <TargetFramework>$(DefaultNetCoreTargetFramework)</TargetFramework>
-    <PackageId>Microsoft.DotNet.Web.Spa.ProjectTemplates.$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion)</PackageId>
+    <PackageId>Microsoft.DotNet.Web.Spa.ProjectTemplates.$(AspNetCoreMajorMinorVersion)</PackageId>
     <Description>Single Page Application templates for ASP.NET Core</Description>
     <PackageTags>$(PackageTags);spa</PackageTags>
     <!-- By default Pack will exclude files that start with '.', we want to include those files -->

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AttributeDirectiveWithViewImports_DesignTime.codegen.html

@@ -1 +1 @@
-                         
+~~~~~~~~~~ ~~~~~~~~~~~~~~

+ 6 - 6
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/BasicComponent_DesignTime.codegen.html

@@ -1,9 +1,9 @@
-                       
-<div class="                ">
+~~~~~~~~~~~ ~~~~~~~~~~~
+<div class="~~~~~~~~~~~~~~~~">
     Hello world
-                                  
+    ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
 </div>
 
-            
-                                 
- 
+~~~~~~~~~~ ~
+    ~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ~
+~

+ 6 - 6
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Basic_DesignTime.codegen.html

@@ -1,8 +1,8 @@
-<div class="                ">
+<div class="~~~~~~~~~~~~~~~~">
     Hello world
-                                  
+    ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
 </div>
-   
-                    
- 
-<p class="                         " />
+~~ 
+    ~~~ ~~~ ~ ~~~~~~
+~
+<p class="~~~~~~~ ~~ ~~~~~ ~ ~~~~ ~" />

+ 11 - 11
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/IncompleteDirectives_DesignTime.codegen.html

@@ -1,15 +1,15 @@
-                                                                                   
+~~ ~~~~~ ~~~~ ~~~~~ ~~~~~~~~ ~~~~ ~~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~ ~~~~~~ ~~
 
-     
-      
-      "
+~~~~~
+~~~~~ 
+~~~~~ "
 
-      
-       
+~~~~~~
+~~~~~~ 
 
-       
-        
-                         
+~~~~~~~
+~~~~~~~ 
+~~~~~~~ ~~~~~~~~~~~~~~~~~
 
-          
-           
+~~~~~~~~~~
+~~~~~~~~~~ 

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InheritsViewModel_DesignTime.codegen.html

@@ -1,2 +1,2 @@
-                                    
-              
+~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~~

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InheritsWithViewImports_DesignTime.codegen.html

@@ -1,2 +1,2 @@
-     
-              
+~~~~~
+~~~~~~ ~~~~~~~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InjectWithModel_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-              
-                            
-                              
+~~~~~~ ~~~~~~~
+~~~~~~~ ~~~~~ ~~~~~~~~~~~~~~
+~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InjectWithSemicolon_DesignTime.codegen.html

@@ -1,5 +1,5 @@
-              
-                                
-                                 
-                                  
-                                    
+~~~~~~ ~~~~~~~
+~~~~~~~ ~~~~~ ~~~~~~~~~~~~~~~   
+~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~  
+~~~~~~~ ~~~~~ ~~~~~~~~~~~~~~~  ~  
+~~~~~~~ ~~~~~~~~~~~~~~~~~ ~~~~~  ~  

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Inject_DesignTime.codegen.html

@@ -1 +1 @@
-                            
+~~~~~~~ ~~~~~ ~~~~~~~~~~~~~~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InvalidNamespaceAtEOF_DesignTime.codegen.html

@@ -1 +1 @@
-           Test.
+~~~~~~~~~~ Test.

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MalformedPageDirective_DesignTime.codegen.html

@@ -1,4 +1,4 @@
-      "foo
+~~~~~ "foo
 
 <h1>About Us</h1>
 <p>We are awesome.</p>

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ModelExpressionTagHelper_DesignTime.codegen.html

@@ -1,6 +1,6 @@
-               
+~~~~~~ ~~~~~~~~
 
-                                           
+~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
 
-<input-test for="    " />
-<input-test for="      " />
+<input-test for="~~~~" />
+<input-test for="~~~~~~" />

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Model_DesignTime.codegen.html

@@ -1 +1 @@
-                                     
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MultipleModels_DesignTime.codegen.html

@@ -1,2 +1,2 @@
-                            
-                                     
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/PageWithNamespace_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-     
-                         
+~~~~~
+~~~~~~~~~~ ~~~~~~~~~~~~~~
 <h1>Hi There!</h1>

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPageWithNoLeadingPageDirective_DesignTime.codegen.html

@@ -1,2 +1,2 @@
 <div>Some text here.</div>
-     
+~~~~~

+ 10 - 10
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPagesWithRouteTemplate_DesignTime.codegen.html

@@ -1,13 +1,13 @@
-              
+~~~~~ ~~~~~~~~
 
-               
-                                          
+~~~~~~ ~~~~~~~~
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-            
-                                     
-     
-                                        
-     
- 
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~ ~~~~~~~~ ~ ~~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+    ~
+~
 
-<h1>New Customer            </h1>
+<h1>New Customer ~~~~~~~~~~~</h1>

+ 16 - 16
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPagesWithoutModel_DesignTime.codegen.html

@@ -1,28 +1,28 @@
-     
+~~~~~
 
-                          
-                                          
+~~~~~~~~~~~~~ ~~~ ~~~~~~~~
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-            
-                                                  
-     
-                             
-                                                         
-     
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~
+    ~
+        ~~~~ ~ ~~~~~~~~~~~~~~
+        ~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    ~
 
-                                    
+    ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
 
-                         
-     
-                                        
-     
- 
+    ~~~~~~ ~~~~~ ~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+    ~
+~
 
 <h1>New Customer</h1>
 <form method="post" class="form-horizontal">
     <div class="text-danger"></div>
     <div class="form-group">
-        <label class="col-md-2 control-label">     </label>
+        <label class="col-md-2 control-label">~~~~~</label>
         <div class="col-md-10">
             <input class="form-control" />
             <span class="text-danger"></span>

+ 20 - 20
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorPages_DesignTime.codegen.html

@@ -1,32 +1,32 @@
-     
+~~~~~
 
-               
-                          
-                                          
+~~~~~~ ~~~~~~~~
+~~~~~~~~~~~~~ ~~~ ~~~~~~~~
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-            
-                                     
-     
-                                                      
-         
-                                 
-                                                             
-         
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~ ~~~~~~~~ ~ ~~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~~~~~~~~~
+        ~
+            ~~~~ ~ ~~~~~~~~~~~~~~
+            ~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+        ~
 
-                                        
-     
+        ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+    ~
 
-                         
-     
-                                        
-     
- 
+    ~~~~~~ ~~~~~ ~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+    ~
+~
 
 <h1>New Customer</h1>
 <form method="post" class="form-horizontal" >
     <div class="text-danger"></div>
     <div class="form-group">
-        <label class="col-md-2 control-label">           </label>
+        <label class="col-md-2 control-label">~~~~~~~~~~~</label>
         <div class="col-md-10">
             <input class="form-control" />
             <span class="text-danger"></span>

+ 8 - 8
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Sections_DesignTime.codegen.html

@@ -1,14 +1,14 @@
-               
+~~~~~~ ~~~~~~~~
 
-                                           
+~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
 
-   
-                                         
- 
+~~ 
+    ~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~
 
 <div>Some body</div>
 
-                   
+~~~~~~~~ ~~~~~~~~ ~
     <div>This is in Section 1</div>
-    <input-test for="    " />
- 
+    <input-test for="~~~~" />
+~

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/UsingDirectives_DesignTime.codegen.html

@@ -1,4 +1,4 @@
-                            
-                         
-             
-             
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~
+~~~~~~ ~~~~~~

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ViewComponentTagHelper_DesignTime.codegen.html

@@ -1,6 +1,6 @@
-                          
-  
-                      
- 
+~~~~~~~~~~~~~ ~~~ ~~~~~~~~
+~~
+    ~~~ ~~~ ~ ~~~~~~~~
+~
 
-<vc:test first-name="    " bar=" World"></vc:test>
+<vc:test first-name="~~~~" bar=" World"></vc:test>

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ViewWithNamespace_DesignTime.codegen.html

@@ -1,2 +1,2 @@
-                         
+~~~~~~~~~~ ~~~~~~~~~~~~~~
 <h1>Hi There!</h1>

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Mvc.Razor.Extensions/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/_ViewImports_DesignTime.codegen.html

@@ -1 +1 @@
-                                  
+~~~~~~~ ~~~~~~~~~~~~~~~~~~~ ~~~~~~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/src/RazorHtmlWriter.cs

@@ -1,4 +1,4 @@
-// Copyright (c) .NET Foundation. All rights reserved.
+// Copyright (c) .NET Foundation. All rights reserved.
 // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
 
 using System;
@@ -141,7 +141,7 @@ namespace Microsoft.AspNetCore.Razor.Language
                 return;
             }
 
-            // We're in non-HTML context. Let's replace all non-whitespace chars with a space.
+            // We're in non-HTML context. Let's replace all non-whitespace chars with a tilde(~).
             foreach (var c in content)
             {
                 if (char.IsWhiteSpace(c))
@@ -150,7 +150,7 @@ namespace Microsoft.AspNetCore.Razor.Language
                 }
                 else
                 {
-                    Builder.Append(' ');
+                    Builder.Append('~');
                 }
             }
         }

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AddTagHelperDirective_DesignTime.codegen.html

@@ -1 +1 @@
-                               
+~~~~~~~~~~~~~ ~~~ ~~~~~~~~~~~~~

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/AttributeDirective_DesignTime.codegen.html

@@ -1,6 +1,6 @@
-                                                                   
-                                                              
-                                                                             
-                                                       
+~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~
+~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
 
 Hello World

+ 18 - 18
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Await_DesignTime.codegen.html

@@ -1,26 +1,26 @@
-            
-                                   
-     
-                     
-     
- 
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~ ~~~~~~~~~~~~ ~~~~~
+    ~
+        ~~~~~~ ~~~~~~
+    ~
+~
 
 <section>
     <h1>Basic Asynchronous Expression Test</h1>
-    <p>Basic Asynchronous Expression:             </p>
-    <p>Basic Asynchronous Template:               </p>
-    <p>Basic Asynchronous Statement:                  </p>
-    <p>Basic Asynchronous Statement Nested:    <b>            </b>  </p>
-    <p>Basic Incomplete Asynchronous Statement:       </p>
+    <p>Basic Asynchronous Expression: ~~~~~~ ~~~~~</p>
+    <p>Basic Asynchronous Template: ~~~~~~~ ~~~~~~</p>
+    <p>Basic Asynchronous Statement: ~~ ~~~~~ ~~~~~~ ~</p>
+    <p>Basic Asynchronous Statement Nested: ~~ <b>~~~~~~ ~~~~~</b> ~</p>
+    <p>Basic Incomplete Asynchronous Statement: ~~~~~~</p>
 </section>
 
 <section>
     <h1>Advanced Asynchronous Expression Test</h1>
-    <p>Advanced Asynchronous Expression:                 </p>
-    <p>Advanced Asynchronous Expression Extended:                     </p>
-    <p>Advanced Asynchronous Template:                          </p>
-    <p>Advanced Asynchronous Statement:                                           </p>
-    <p>Advanced Asynchronous Statement Extended:                         </p>
-    <p>Advanced Asynchronous Statement Nested:    <b>                            </b>  </p>
-    <p>Advanced Incomplete Asynchronous Statement:                     </p>
+    <p>Advanced Asynchronous Expression: ~~~~~~ ~~~~~~ ~~</p>
+    <p>Advanced Asynchronous Expression Extended: ~~~~~~ ~~~~~~~~~~ ~~</p>
+    <p>Advanced Asynchronous Template: ~~~~~~~ ~~~~~~~~~~ ~~~~~~</p>
+    <p>Advanced Asynchronous Statement: ~~ ~~~~~ ~~~~~~~~~~~~~~ ~~~~~~ ~~~~~~~~~ ~</p>
+    <p>Advanced Asynchronous Statement Extended: ~~ ~~~~~ ~~~~~~~~~~ ~~ ~</p>
+    <p>Advanced Asynchronous Statement Nested: ~~ <b>~~~~~~ ~~~~~~~~~~~~~~ ~~~~~~</b> ~</p>
+    <p>Advanced Incomplete Asynchronous Statement: ~~~~~~ ~~~~~~~~~~~~~</p>
 </section>

+ 25 - 25
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Blocks_DesignTime.codegen.html

@@ -1,37 +1,37 @@
-  
-              
- 
+~~
+    ~~~ ~ ~ ~~
+~
 
-                 
-    <p>Hello from C#, #    </p>
-           
- 
+~~~~~~~~ ~~ ~~~ ~
+    <p>Hello from C#, #~~~~</p>
+    ~ ~~ ~~
+~
 
-              
+~~~~~ ~~ ~~~ ~
     <p>We wrote 10 lines!</p>
- 
+~
 
-            
-            
+~~~~~~~~~~ ~
+    ~~~~ ~~~
         <p>No really, we wrote 10 lines!</p>
-              
-            
+        ~~~~~~
+    ~~~~~~~~
         <p>Actually, we didn't...</p>
-              
- 
+        ~~~~~~
+~
 
-                                  
-    <p>Hello again from C#, #    </p>
- 
+~~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~ ~~ ~~ ~
+    <p>Hello again from C#, #~~~~</p>
+~
 
-      
+~~~~ ~
     <p>That time, we wrote 5 lines!</p>
-                       
-    <p>Oh no! An error occurred:              </p>
- 
+~ ~~~~~~~~~~~~~~~ ~~~ ~
+    <p>Oh no! An error occurred: ~~~~~~~~~~~~~</p>
+~
 
-<p>i is now   </p>
+<p>i is now ~~</p>
 
-                     
+~~~~~~~~~ ~~~~~~~~~ ~
     <p>This block is locked, for your security!</p>
- 
+~

+ 32 - 32
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp7_DesignTime.codegen.html

@@ -1,43 +1,43 @@
 <body>
-      
-                                                                                                    
-         
-                                                
-          
+    ~~
+        ~~~ ~~~~~~~~~~ ~ ~~~ ~~~~~~~~~~~~~~~~~~ ~~~~~~~ ~~~~~~~~~~ ~~~~~~ ~~~~~~~~~ ~~~~~~ ~~~~~~~~~
+        ~
+            ~~~~~~ ~~~~~ ~ ~~~~~~~~ ~~~~~~ ~~~~~
+        ~~
 
-                                                     
+        ~~ ~~~~ ~~ ~~~ ~~ ~ ~~~~ ~~~~ ~~~~~~ ~~~~~ ~~
 
-                                  
-                                                   
-                                                           
-                                                                                             
-     
+        ~~~ ~~~~~~~ ~ ~~~~~~~~~~~~
+        ~~~~ ~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~
+        ~~~~~~ ~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~
+        ~~~~~~~ ~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    ~
 
-                                                           
-     
-                                      
-         
-                           
-         
-     
+    ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~ ~~~ ~~~ ~~~~~~~
+    ~
+        ~~ ~~~~~~~~~~~~ ~~ ~~~~ ~~~~~~
+        ~
+            ~~ ~~ ~~~~~~~~~
+        ~
+    ~
     <p>
-        Here's a very unique number:                                                                  
+        Here's a very unique number: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
     </p>
 
     <div>
-                                                                
+        ~~~~~~~~~ ~~~~~~~ ~~~~~ ~~~~~~~~~~~~~ ~~ ~~~~~ ~~~~~~ ~~
     </div>
 
-                         
-     
-                     
-                           
-                  
-                                               
-                                
-                  
-                  
-                                        
-                  
-     
+    ~~~~~~~ ~~~~~~~~~~~~~
+    ~
+        ~~~~ ~~~ ~~~~
+            ~~ ~~ ~~~~~~~~~
+            ~~~~~~
+        ~~~~ ~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~
+            ~~ ~~ ~~~~ ~~~~~~~~~
+            ~~~~~~
+        ~~~~ ~~~~~
+            ~~ ~~ ~~~~ ~~~~ ~~ ~~~~~~~~~
+            ~~~~~~
+    ~
 </body>

+ 52 - 52
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CSharp8_DesignTime.codegen.html

@@ -1,67 +1,67 @@
-                                 
+~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-  
-                                               
-     
-                    
-     
+~~
+    ~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~
+    ~
 
-                                                   
-     
+    ~~~~~ ~~~~~~~ ~~~~ ~~~ ~~ ~~~~~~~~~~~~~~~~~~~~~
+    ~
 
-     
+    ~
 
-                       
-                                                           
+    ~~~~~ ~~~~~ ~ ~~~~~
+    ~~~~~ ~~~ ~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-                                      
-                             
-                             
-     
-                              
-     
- 
+    ~~~ ~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~
+    ~~~ ~~~~~~~~ ~ ~~~~~~~~~~
+    ~~~~~~ ~~~~~~~~ ~~~~~~~~~
+    ~
+        ~~~~~~ ~~~~~~~~~~~~~~~
+    ~
+~
 
-            
-                
+~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~
 
-                 
- 
-                                   
-                                     
-                      
-  
+~~~~~~~~~~ ~~~~~~
+~
+    ~~~~~~~~~~~~~~ ~~ ~~~~ ~~~~~~~~
+    ~~~~~~~~~~~~~~~ ~~ ~~~~ ~~~~~~~~~
+    ~ ~~ ~~~~ ~~~~~~~~
+~~
 
-                                                
- 
-        
- 
+~~~~~~ ~~~~~~~ ~~~~ ~~~ ~~ ~~~~~~~~~~~~~~~~~~~~~
+~
+    ~~~~
+~
 
-             
-                     
-                      
+~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~
 
-            
-                 
-     
-              
-              
-     
+~~~~~~~~~~ ~
+    ~~~~ ~~~~~~~~
+    ~
+        ~~~~~~
+        ~~~~~~
+    ~
 
-                                                     
-     
-                                                                 
-                                      
-     
+    ~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~
+    ~
+        ~~~ ~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+        ~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~
+    ~
 
-                                       
+    ~~~~~~~ ~~~~~~ ~~~~~~ ~ ~~~~ ~~~~ ~
 
-                                          
+    ~~~~~~~ ~~~~~~~~~ ~~~~~~ ~ ~~~~ ~~~~ ~
 
-                                                          
+    ~~~~~~~ ~~~~~~~~~~~ ~~~~~~~~ ~~~~~~~~~~~ ~ ~~~~ ~~~~ ~
 
-                       
-     
-                                         
-     
- 
+    ~~~~~~~ ~~~~~ ~~~~~
+    ~
+        ~~~~~~ ~~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+    ~
+~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlockAtEOF_DesignTime.codegen.html

@@ -1 +1 @@
-  
+~~

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlockWithTextElement_DesignTime.codegen.html

@@ -1,4 +1,4 @@
-  
-               <text>foo</text> 		
-              			<text>bar       </text>
- 
+~~
+    ~~~ ~ ~ ~~ <text>foo</text> 		
+    ~~~ ~ ~ ~~			<text>bar ~~~~~~</text>
+~

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/CodeBlock_DesignTime.codegen.html

@@ -1,5 +1,5 @@
-  
-                                  
-                                                                    
-     
- 
+~~
+    ~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~~~~ ~
+        ~~~~~~~~~~~~~~~~~~~~~~ ~~~~ ~~~ ~~ ~ ~~~~~~~~~~~~ ~ ~~~~~~~~
+    ~
+~

+ 12 - 12
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ConditionalAttributes_DesignTime.codegen.html

@@ -1,15 +1,15 @@
-  
-                  
-                    
+~~
+    ~~~ ~~ ~ ~~~~~
+    ~~~ ~~~ ~ ~~~~~~
     <a href="Foo" />
-    <p class="    " />
-    <p class="foo     " />
-    <p class="     foo" />
-    <input type="checkbox" checked="   " />
-    <input type="checkbox" checked="foo    " />
-    <p class="                         " />
+    <p class="~~~~" />
+    <p class="foo ~~~~" />
+    <p class="~~~~ foo" />
+    <input type="checkbox" checked="~~~" />
+    <input type="checkbox" checked="foo ~~~" />
+    <p class="~~~~~~~ ~~ ~~~~~ ~ ~~~~ ~" />
     <a href="~/Foo" />
-    <script src="                                             " type="text/javascript"></script>
-    <script src="                                                             " type="text/javascript"></script>
+    <script src="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" type="text/javascript"></script>
+    <script src="~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" type="text/javascript"></script>
     <script src="http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.16/jquery-ui.min.js" type="text/javascript"></script>
- 
+~

+ 8 - 8
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/DesignTime_DesignTime.codegen.html

@@ -1,15 +1,15 @@
 <div>
-                                           
-    <p>This is item #  </p>
-             
+            ~~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~~~~ ~
+    <p>This is item #~~</p>
+            ~
 </div>
 
 <p>
-               
-      <p>Bar      Biz</p> 
+~~~~~~~~~~~~~~~
+~~~~~~<p>Bar ~~~~ Biz</p>~
 </p>
 
-                 
+~~~~~~~~ ~~~~~~ ~
     <p>Foo</p>
-        
- 
+    ~~~~
+~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyCodeBlock_DesignTime.codegen.html

@@ -1,3 +1,3 @@
 This is markup
 
-   
+~~~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyExplicitExpression_DesignTime.codegen.html

@@ -1,3 +1,3 @@
 This is markup
 
-   
+~~~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyImplicitExpressionInCode_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-  
-     
- 
+~~
+    ~
+~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/EmptyImplicitExpression_DesignTime.codegen.html

@@ -1,3 +1,3 @@
 This is markup
 
- !
+~!

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpressionAtEOF_DesignTime.codegen.html

@@ -1,3 +1,3 @@
 This is markup
 
-  
+~~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpressionWithMarkup_DesignTime.codegen.html

@@ -1 +1 @@
-<div>   </div>
+<div>~~~</div>

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExplicitExpression_DesignTime.codegen.html

@@ -1 +1 @@
-1 + 1 =       
+1 + 1 = ~~~~~~

+ 11 - 11
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ExpressionsInCode_DesignTime.codegen.html

@@ -1,16 +1,16 @@
-  
-                      
-                       
- 
+~~
+    ~~~~~~ ~~~ ~ ~~~~~
+    ~~~~~~ ~~~ ~ ~~~~~~
+~
 
-                  
-        
-        
+~~~~~~~ ~~ ~~~~~ ~
+    ~~~~
+~ ~~~~ ~
     <p>Foo is Null!</p>
- 
+~
 
 <p>
-                                 
-                            
- 
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~
+    ~~~~~~~~~~~~~~~~~~ ~~~~~
+~
 </p>

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/FunctionsBlockMinimal_DesignTime.codegen.html

@@ -1,7 +1,7 @@
 
 
-	           
-                          
-	                   
- 
- 
+	~~~~~~~~~~~
+~~~~~~ ~~~~~~~~~~ ~~~~~~ ~
+	~~~~~~ ~~~~~ ~ ~~~~
+~
+~

+ 9 - 9
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/FunctionsBlock_DesignTime.codegen.html

@@ -1,12 +1,12 @@
-            
+~~~~~~~~~~ ~
 
- 
+~
 
-            
-                                
-                             
-                            
-     
- 
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~ ~ ~~~ ~~~~~~~~~
+    ~~~~~~~ ~~~ ~~~~~~~~~~~ ~
+        ~~~~~~ ~~~~~~~~~~~~~
+    ~
+~
 
-Here's a random number:             
+Here's a random number: ~~~~~~~~~~~~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/HiddenSpansInCode_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-  
-        
- 
+~~
+    ~~~~
+~

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Implements_DesignTime.codegen.html

@@ -1,5 +1,5 @@
-                       
+~~~~~~~~~~~ ~~~~~~~~~~~
 
-            
-                                  
- 
+~~~~~~~~~~ ~
+    ~~~~ ~~~~~~~~~~~~~~~~~~~~~ ~ ~
+~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ImplicitExpressionAtEOF_DesignTime.codegen.html

@@ -1,3 +1,3 @@
 This is markup
 
- 
+~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ImplicitExpression_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-                               
-    <p>This is item #  </p>
- 
+~~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~~~~ ~
+    <p>This is item #~~</p>
+~

+ 18 - 18
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/IncompleteDirectives_DesignTime.codegen.html

@@ -1,25 +1,25 @@
-                                                                                   
+~~ ~~~~~ ~~~~ ~~~~~ ~~~~~~~~ ~~~~ ~~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~~~~~ ~~~~~ ~~~~~~ ~~
 
-             
-              
-               
+~~~~~~~~~~~~~
+~~~~~~~~~~~~~ 
+~~~~~~~~~~~~~ ~
 
-                
-                 
-                  
+~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~ 
+~~~~~~~~~~~~~~~~ ~
 
-                
-                 
-                  
+~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~ 
+~~~~~~~~~~~~~~~~ ~
 
-         
-          
+~~~~~~~~~
+~~~~~~~~~ 
 
-          
-           
+~~~~~~~~~~
+~~~~~~~~~~ 
 
-        
-         
+~~~~~~~~
+~~~~~~~~ 
 
-         {
-            
+~~~~~~~~ {
+~~~~~~~~~~ ~

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Inherits_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-                               
+~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~
 
-      
+~~~~~~

+ 2 - 2
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/InlineBlocks_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-             (string link) {
-    <a href="                                   <text>#</text>  " />
+~~~~~~~~ ~~~~(string link) {
+    <a href="~~~~~~~~ ~~ ~~~~~ ~ ~~~~~ ~ ~~~~ ~ <text>#</text> ~" />
 }

+ 26 - 26
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Instrumented_DesignTime.codegen.html

@@ -1,38 +1,38 @@
-  
-              
-               <p>Bar</p> 
-      Hello, World
+~~
+    ~~~ ~ ~ ~~
+    ~~~ ~~~ ~ ~<p>Bar</p>~
+    ~~Hello, World
     <p>Hello, World</p>
- 
+~
 
-                 
-    <p>Hello from C#, #    </p>
-           
- 
+~~~~~~~~ ~~ ~~~ ~
+    <p>Hello from C#, #~~~~</p>
+    ~ ~~ ~~
+~
 
-              
+~~~~~ ~~ ~~~ ~
     <p>We wrote 10 lines!</p>
- 
+~
 
-            
-            
+~~~~~~~~~~ ~
+    ~~~~ ~~~
         <p>No really, we wrote 10 lines!</p>
-              
-            
+        ~~~~~~
+    ~~~~~~~~
         <p>Actually, we didn't...</p>
-              
- 
+        ~~~~~~
+~
 
-                                  
-    <p>Hello again from C#, #    </p>
- 
+~~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~ ~~ ~~ ~
+    <p>Hello again from C#, #~~~~</p>
+~
 
-      
+~~~~ ~
     <p>That time, we wrote 5 lines!</p>
-                       
-    <p>Oh no! An error occurred:              </p>
- 
+~ ~~~~~~~~~~~~~~~ ~~~ ~
+    <p>Oh no! An error occurred: ~~~~~~~~~~~~~</p>
+~
 
-                     
+~~~~~~~~~ ~~~~~~~~~ ~
     <p>This block is locked, for your security!</p>
- 
+~

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/MarkupInCodeBlock_DesignTime.codegen.html

@@ -1,5 +1,5 @@
-  
-                                  
-        <p>Hello from C#, #               </p>
-     
- 
+~~
+    ~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~~~~ ~
+        <p>Hello from C#, #~~~~~~~~~~~~~~~</p>
+    ~
+~

+ 36 - 36
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Markup_InCodeBlocks_DesignTime.codegen.html

@@ -1,45 +1,45 @@
 
-  
-                             
-     
-                                                   
-      
-
-                                 
-     
-        <div>            </div>
-     
- 
-
-                         
-                                 
-
-            
-                                        
-     
-                                             
+~~
+    ~~~ ~~~~~~ ~ ~~~ ~~~~~~~~
+    ~
+        ~~~ ~~~~~~~~ ~ ~~~~ ~ ~~~~~~~~~ ~~~ ~ ~~~ ~
+    ~~
+
+    ~~~~ ~~~~~~~~~~~~~~~~ ~~~~~~~
+    ~
+        <div>~~~~~~~~~~~~</div>
+    ~
+~
+
+~~ ~~~~~~~~~~~~~~~~~~~~ ~
+~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~
+
+~~~~~~~~~~ ~
+    ~~~~ ~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
+    ~
+        ~~~ ~~~~~~~~~ ~ ~~~~~ ~~~~~~~~~~~~~~~
         <div>
-            <h3>Happy birthday             !</h3>
+            <h3>Happy birthday ~~~~~~~~~~~~!</h3>
         </div>
 
         <ul>
-                                                  
-         
-            <li>     Happy birthday!</li>
-         
+        ~~~~ ~~~~ ~ ~ ~~ ~ ~ ~~~~~~~~~~ ~ ~~~ ~~~~
+        ~
+            <li>~~~~ Happy birthday!</li>
+        ~
         </ul>
 
-                            
-         
-                   
-         
+        ~~ ~~~~~~~~~~~ ~ ~~~
+        ~
+            ~~~~~~~
+        ~
 
         <h4>Secret message</h4>
-     
-
-                
-     
-                                        
-                                    
-     
- 
+    ~
+
+    ~~~~~ ~~~~~~
+    ~
+        ~~~~~~ ~~~~~~ ~~~~ ~ ~~~~ ~~~~ ~
+        ~~~~~~ ~~~ ~~~ ~ ~~~~ ~~~~ ~
+    ~
+~

+ 6 - 6
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NestedCSharp_DesignTime.codegen.html

@@ -1,8 +1,8 @@
-  
-                                         
-     
+~~
+    ~~~~~~~~ ~~~~ ~~~~~~ ~~ ~~~~~~~~~~~~~
+    ~
         <div>
-                             .
+            ~~~~~~~~~~~~~~~~~.
         </div>
-     
- 
+    ~
+~

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NestedCodeBlocks_DesignTime.codegen.html

@@ -1,4 +1,4 @@
-          
-              
-     
- 
+~~~~~~~~ ~
+    ~~~~~~~~ ~
+    ~
+~

+ 26 - 26
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NoLinePragmas_DesignTime.codegen.html

@@ -1,38 +1,38 @@
-  
-              
- 
+~~
+    ~~~ ~ ~ ~~
+~
 
-                 
-    <p>Hello from C#, #    </p>
-           
- 
+~~~~~~~~ ~~ ~~~ ~
+    <p>Hello from C#, #~~~~</p>
+    ~ ~~ ~~
+~
 
-              
+~~~~~ ~~ ~~~ ~
     <p>We wrote 10 lines!</p>
- 
+~
 
-            
-            
+~~~~~~~~~~ ~
+    ~~~~ ~~~
         <p>No really, we wrote 10 lines!</p>
-              
-            
+        ~~~~~~
+    ~~~~~~~~
         <p>Actually, we didn't...</p>
-              
- 
+        ~~~~~~
+~
 
-                                  
-    <p>Hello again from C#, #    </p>
- 
+~~~~~~~~ ~ ~ ~~ ~ ~~ ~~~ ~ ~~ ~~ ~
+    <p>Hello again from C#, #~~~~</p>
+~
 
-      
+~~~~ ~
     <p>That time, we wrote 5 lines!</p>
-                       
-    <p>Oh no! An error occurred:              </p>
- 
+~ ~~~~~~~~~~~~~~~ ~~~ ~
+    <p>Oh no! An error occurred: ~~~~~~~~~~~~~</p>
+~
 
-                                  
-<p>i is now   </p>
+~~ ~~~~ ~~~ ~~ ~~~~~~~~~~ ~~ ~~ ~~
+<p>i is now ~~</p>
 
-                     
+~~~~~~~~~ ~~~~~~~~~ ~
     <p>This block is locked, for your security!</p>
- 
+~

+ 10 - 10
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/NullConditionalExpressions_DesignTime.codegen.html

@@ -1,11 +1,11 @@
-  
-                  
-                           
-                               
-                                              
- 
+~~
+    ~~~~~~~~~~~~~~
+    ~~~~~~~~~~~~~~~~~~~~~~~
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~
 
-              
-                       
-                           
-                                          
+~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/OpenedIf_DesignTime.codegen.html

@@ -1,5 +1,5 @@
 <html>
 <body>
-             
+~~~ ~~~~~~ ~ 
 </body>
 </html>

+ 5 - 5
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/ParserError_DesignTime.codegen.html

@@ -1,5 +1,5 @@
-  
-  
-          
-          
- 
+~~
+~~
+~~~ ~ ~~~~
+~~~ ~ ~~~~
+~

+ 13 - 13
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RazorComments_DesignTime.codegen.html

@@ -1,18 +1,18 @@
-                                    
-<p>This should           be shown</p>
+~~~~~~ ~~ ~~~ ~~~~~ ~~ ~~ ~~~~~~~~~~
+<p>This should ~~ ~~~ ~~ be shown</p>
 
-  
-                                       
-                                                       
-                     
-                  
-     
- 
+~~
+    ~~ ~~~~~ ~~~ ~~~~~~~~~~~~~ ~~~~~ ~~
+    ~~~~~~~~~ ~~~ ~ ~~ ~~~ ~~~~~~~~~~~~~ ~~~~~ ~~ ~~~~~
+    ~~~~~~ ~~ ~~~~~ ~
+        ~~~~~ ~~~~
+    ~
+~
 
-                           
-<p>But this should show the comment syntax:     </p>
+~~ ~~~ ~~~ ~ ~~~ ~~~ ~~~~ ~
+<p>But this should show the comment syntax: ~~~~</p>
 
-         
+~~~~~~~~~
 
 <input value="@*this razor comment is the actual value*@" type="text" />
-<input                                             type="text" />
+<input ~~~~~~ ~~~~~ ~~~~~~~ ~~~~ ~~~ ~~ ~~~~~~~~~~ type="text" />

+ 1 - 1
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/RemoveTagHelperDirective_DesignTime.codegen.html

@@ -1 +1 @@
-                                
+~~~~~~~~~~~~~~~~ ~~ ~~~~~~~~~~~~

+ 11 - 11
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Sections_DesignTime.codegen.html

@@ -1,17 +1,17 @@
-  
-                                        
- 
+~~
+    ~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~
 
 <div>This is in the Body>
 
-                   
-    <div class="some       ">This is in Section 2</div>
- 
+~~~~~~~~ ~~~~~~~~ ~
+    <div class="some ~~~~~~">This is in Section 2</div>
+~
 
-                   
+~~~~~~~~ ~~~~~~~~ ~
     <div>This is in Section 1</div>
- 
+~
 
-                          
-                                  <span>     </span>   
- 
+~~~~~~~~ ~~~~~~~~~~~~~~~ ~
+    ~~ ~~~~~~~~~~~~~ ~~~~~~~ ~ ~ ~<span>~~~~~</span>~ ~
+~

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SimpleUnspacedIf_DesignTime.codegen.html

@@ -1,4 +1,4 @@
-          
- 
+~~~ ~~~~~~
+~
 	<div></div>
- 
+~

+ 81 - 81
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/SingleLineControlFlowStatements_DesignTime.codegen.html

@@ -1,102 +1,102 @@
 <p>Before Text</p>
 
-  
-                                                                                                
-
-                
-     
-                                             
-                                                    
-                                                  
-                                                    
-            
-                                
-     
-
-                                
-                                
-            
-
-                                          
-             
-
-      
-                     
-                                
-
-                                
-                       
-
-                                                                 
-                           
-
-                
-                       
- 
-
-            
-                       
-     
-                   
-
-                                             
-                                                    
-            
-                                               
+~~
+    ~~ ~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~ ~~ ~~~~~~~~~~ ~~~~ ~~ ~~~~~~~~~ ~~ ~~~ ~~~~ ~~~~~~~~~~~~~
+
+    ~~~~~~ ~~~~~
+    ~
+        ~~ ~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~ ~~
+            ~~~~~~ ~~~~~~~~ ~~~~ ~~ ~~~~~~~~~ ~~ ~~~
+        ~~~~ ~~ ~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~ ~~
+            ~~~~~~ ~~~~~~~~ ~~~~ ~~ ~~~~~~~~~ ~~ ~~~
+        ~~~~
+            ~~~~~~ ~~~~~~~~~~~~~
+    ~
+
+    ~~~ ~~~~ ~ ~ ~~ ~ ~ ~~~ ~~~~
+        ~~ ~~~~~~~~~~~~ ~ ~~~~~~
+        ~~~~
+
+    ~~~~~~~~ ~~~~ ~~~~ ~~ ~~~~~ ~~~~~~~~~~
+        ~~~~~
+
+    ~~
+        ~~~~~~~~~~~~~
+    ~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
+
+    ~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
+        ~~~~~~~~~~~~~~~
+
+    ~~~~~ ~~~~ ~~~~~~ ~ ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+        ~~~~~~~~~~~~~~~~~~~
+
+    ~~~~~ ~~~~~~
+        ~~~~~~~~~~~~~~~
+~
+
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~~ ~~~~~
+    ~
+        ~~~ ~ ~ ~~~
+
+        ~~ ~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~ ~~ ~~
+            ~~~~~~ ~~~~~~~~ ~~~~ ~~ ~~~~~~~~~ ~~ ~~~
+        ~~~~
+            ~~~~~~ ~~~ ~~~~~ ~~~~~~~~~ ~~ ~~~~~
         
-                                    
-                                    
-                
+        ~~~ ~~~~ ~ ~ ~~ ~ ~ ~~~ ~~~~
+            ~~ ~~~~~~~~~~~~ ~ ~~~~~~
+            ~~~~
 
-                                             
-                 
+        ~~~~~~~ ~~~~ ~~~~ ~~ ~~~~~ ~~~~~~~~~~
+            ~~~~~
 
-          
-                         
-                                    
+        ~~
+            ~~~~~~~~~~~~~
+        ~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
 
-                                    
-                           
+        ~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
+            ~~~~~~~~~~~~~~~
 
-                                                                     
-                               
+        ~~~~~ ~~~~ ~~~~~~ ~ ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+            ~~~~~~~~~~~~~~~~~~~
 
-                   
-                           
-     
+        ~~~~ ~~~~~~
+            ~~~~~~~~~~~~~~~
+    ~
 
-                         
+    ~~~ ~~~~~~~~~~~~ ~ ~~
 
-                                
-     
-                                 
-     
+    ~~~~~~ ~~~~ ~~~~~~~~~~~~~~~~
+    ~
+        ~~ ~~~~~~ ~~~~~~~~~~~~~~~
+    ~
 
- 
+~
 
-                             
-      
+~~~~ ~~~~ ~ ~ ~~ ~ ~ ~~~ ~~~~
+    ~~
 
-                                      
-         
+~~~~~~~~ ~~~~ ~~~~ ~~ ~~~~~ ~~~~~~~~~~
+    ~~~~~
 
-   
-                 
-                            
+~~~
+    ~~~~~~~~~~~~~
+~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
 
-                             
-                   
+~~~~~~ ~~~~~~~~~~~~~~~ ~~ ~~~
+    ~~~~~~~~~~~~~~~
 
-                                                              
-                              
-                       
+~~~~~~ ~~~~ ~~~~~~ ~ ~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    ~~ ~~~~~~~ ~~~ ~~~~~~ ~~~~
+    ~~~~~~~~~~~~~~~~~~~
 
-            
-                   
+~~~~~ ~~~~~~
+    ~~~~~~~~~~~~~~~
 
-                            <p>Hello!</p>
+~~~ ~~~~~~ ~~~~~~~~~~~~~~~~ <p>Hello!</p>
 
-           
-       <p>The time is              </p>
+~~~ ~~~~~~ 
+    ~~ <p>The time is ~~~~~~~~~~~~~</p>
 
 <p>After Text</p>

+ 4 - 4
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/StringLiterals_DesignTime.codegen.html

@@ -83,7 +83,7 @@
 <p>This is line 83</p>
 <p>This is line 84</p><br>
 
-                                
+~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~ ~
     <p>This is line 1 nested</p>
     <p>This is line 2 nested</p>
     <p>This is line 3 nested</p>
@@ -159,7 +159,7 @@
     <p>This is line 73 nested</p>
     <p>This is line 74 nested</p>
     <p>This is line 75 nested</p>
- 
+~
 <p>This is line 1</p>
 <p>This is line 2</p>
 <p>This is line 3</p>
@@ -203,7 +203,7 @@
 <p>This is line 41</p>
 <p>This is line 42</p>
 <p>This is line 43</p>hi!
-                                    
+~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~ ~
     <p>This is line 1 nested</p>
     <p>This is line 2 nested</p>
     <p>This is line 3 nested</p>
@@ -234,4 +234,4 @@
     <p>This is line 28 nested</p>
     <p>This is line 29 nested</p>
     <p>30</p>
- !
+~!

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Tags_DesignTime.codegen.html

@@ -1,6 +1,6 @@
-  
-    <script type="text/javascript"     ></script @foo >
- 
+~~
+    <script type="text/javascript" ~~~ ></script @foo >
+~
 
 <script type="text/html">
     <%var x = window == null%>

+ 34 - 34
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Templates_DesignTime.codegen.html

@@ -1,53 +1,53 @@
-            
-                                                                       
-                                             
-                                            
-                                                            
-             
-           
-     
- 
-
-  
-                                 <text>This works      !</text> 
-            
- 
-
-   
-                                 <p class="     ">Hello</p> 
-                   
- 
+~~~~~~~~~~ ~
+    ~~~~~~ ~~~~~~~~~~~~ ~~~~~~~~~~ ~~~~~~ ~~~~~~~~~ ~~~~~~~ ~~~~~~~~~ ~
+        ~~~~~~ ~~~ ~~~~~~~~~~~~~~~~~~~~~ ~~ ~
+            ~~~~~~~ ~ ~ ~~ ~ ~ ~~~~~~ ~~~~ ~
+                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+            ~
+        ~~~
+    ~
+~
+
+~~
+    ~~~~~~~~~~~~~ ~~~~~~~ ~~~ ~ ~<text>This works ~~~~~!</text>~
+    ~~~~~~~~
+~
+
+~~ 
+    ~~~~~~~~~~~~~ ~~~~~~~ ~~~ ~ ~<p class="~~~~~">Hello</p>~
+    ~~~~~~~~~~~~~~~
+~
 
 <ul>
-              <li>Item #     </li>  
+~~~~~~~~~~~~ ~<li>Item #~~~~~</li>~~
 </ul>
 
 <p>
-           
-       This is line#      of markup<br/>
- 
+~~~~~~~~~~~
+    ~~ This is line#~~~~~ of markup<br/>
+~
 </p>
 
 <p>
-           
-      : This is line#      of markup<br />
- 
+~~~~~~~~~~~
+    ~~: This is line#~~~~~ of markup<br />
+~
 </p>
 
 <p>
-           
-      :: This is line#      of markup<br />
- 
+~~~~~~~~~~~
+    ~~:: This is line#~~~~~ of markup<br />
+~
 </p>
 
 
 <ul>
-                 <li>
-        Item #     
-                             
+    ~~~~~~~~~~~ ~<li>
+        Item #~~~~~
+        ~~~~~ ~~~~~~ ~ ~~~~~~
         <ul>
             <li>Child Items... ?</li>
-                                                           
+            ~~~~~~~~~~~~ ~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~
         </ul>
-    </li> 
+    </li>~
 </ul> 

+ 3 - 3
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/UnfinishedExpressionInCode_DesignTime.codegen.html

@@ -1,3 +1,3 @@
-  
-          
- 
+~~
+~~~~~~~~~~
+~

+ 12 - 12
src/Razor/Microsoft.AspNetCore.Razor.Language/test/TestFiles/IntegrationTests/CodeGenerationIntegrationTest/Usings_DesignTime.codegen.html

@@ -1,15 +1,15 @@
-                
-                                 
-             
+~~~~~~ ~~~~~~~~~
+~~~~~~ ~~~ ~ ~~~~~~~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~
 
-                    
-                            
-                                          
+~~~~~~ ~~~~~~ ~~~~~~
+~~~~~~ ~~~~~~ ~~~~~~~~~~~~~~
+~~~~~~ ~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-   
-                                                               
-                                                                                        
- 
+~~ 
+    ~~~~~ ~~~ ~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+    ~~~~~ ~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+~
 
-<p>Path's full type name is                       </p>
-<p>Foo's actual full type name is                      </p>
+<p>Path's full type name is ~~~~~~~~~~~~~~~~~~~~~~</p>
+<p>Foo's actual full type name is ~~~~~~~~~~~~~~~~~~~~~</p>

Некоторые файлы не были показаны из-за большого количества измененных файлов