diff --git a/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props b/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props
index 1d353d4c60..a11f585bef 100644
--- a/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props
+++ b/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props
@@ -8,8 +8,8 @@
configure this behaviour.
-->
- false
- false
+ RazorResolveGenerateInputs;RazorCoreGenerate
+ RazorGenerate;RazorCoreCompile
diff --git a/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.targets b/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.targets
index e69efd266a..ee11fbc265 100644
--- a/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.targets
+++ b/src/Microsoft.AspNetCore.Razor.Design/build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.targets
@@ -45,6 +45,13 @@
Default values for properties that affect Razor MSBuild behavior.
-->
+
+ false
+ true
+
$(IntermediateOutputPath)Razor\
diff --git a/test/Microsoft.AspNetCore.Razor.Design.Test/IntegrationTests/PublishIntegrationTest.cs b/test/Microsoft.AspNetCore.Razor.Design.Test/IntegrationTests/PublishIntegrationTest.cs
index 9f06065f8d..8dc75f7bb1 100644
--- a/test/Microsoft.AspNetCore.Razor.Design.Test/IntegrationTests/PublishIntegrationTest.cs
+++ b/test/Microsoft.AspNetCore.Razor.Design.Test/IntegrationTests/PublishIntegrationTest.cs
@@ -9,6 +9,27 @@ namespace Microsoft.AspNetCore.Razor.Design.IntegrationTests
{
public class PublishIntegrationTest : MSBuildIntegrationTestBase
{
+ [Fact]
+ [InitializeTestProject("SimpleMvc")]
+ public async Task Publish_RazorCompileOnPublish_IsDefault()
+ {
+ var result = await DotnetMSBuild("Publish");
+
+ Assert.BuildPassed(result);
+
+ Assert.FileDoesNotExist(result, OutputPath, "SimpleMvc.PrecompiledViews.dll");
+ Assert.FileDoesNotExist(result, OutputPath, "SimpleMvc.PrecompiledViews.pdb");
+
+ Assert.FileExists(result, PublishOutputPath, "SimpleMvc.dll");
+ Assert.FileExists(result, PublishOutputPath, "SimpleMvc.pdb");
+ Assert.FileExists(result, PublishOutputPath, "SimpleMvc.PrecompiledViews.dll");
+ Assert.FileExists(result, PublishOutputPath, "SimpleMvc.PrecompiledViews.pdb");
+
+ // By default refs and .cshtml files will not be copied on publish
+ Assert.FileCountEquals(result, 0, Path.Combine(PublishOutputPath, "refs"), "*.dll");
+ Assert.FileCountEquals(result, 0, Path.Combine(PublishOutputPath, "Views"), "*.cshtml");
+ }
+
[Fact]
[InitializeTestProject("SimpleMvc")]
public async Task Publish_WithRazorCompileOnBuild_PublishesAssembly()