diff --git a/src/Components/WebAssembly/Build/src/Microsoft.AspNetCore.Components.WebAssembly.Build.nuspec b/src/Components/WebAssembly/Build/src/Microsoft.AspNetCore.Components.WebAssembly.Build.nuspec
index 65f6ddb98f..95b56065b2 100644
--- a/src/Components/WebAssembly/Build/src/Microsoft.AspNetCore.Components.WebAssembly.Build.nuspec
+++ b/src/Components/WebAssembly/Build/src/Microsoft.AspNetCore.Components.WebAssembly.Build.nuspec
@@ -10,6 +10,7 @@
$CommonFileElements$
+
diff --git a/src/Components/WebAssembly/Build/src/ReferenceBlazorBuildFromSource.props b/src/Components/WebAssembly/Build/src/ReferenceBlazorBuildFromSource.props
index d480df7f95..be4457dfec 100644
--- a/src/Components/WebAssembly/Build/src/ReferenceBlazorBuildFromSource.props
+++ b/src/Components/WebAssembly/Build/src/ReferenceBlazorBuildFromSource.props
@@ -21,7 +21,8 @@
-
-
+
+
+
diff --git a/src/Components/WebAssembly/Build/src/build/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.props b/src/Components/WebAssembly/Build/src/build/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.props
index f20d90334c..a85c05ce87 100644
--- a/src/Components/WebAssembly/Build/src/build/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.props
+++ b/src/Components/WebAssembly/Build/src/build/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.props
@@ -1,3 +1,7 @@
+
+
+ true
+
diff --git a/src/Components/WebAssembly/Build/src/buildTransitive/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.targets b/src/Components/WebAssembly/Build/src/buildTransitive/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.targets
new file mode 100644
index 0000000000..951d2823b0
--- /dev/null
+++ b/src/Components/WebAssembly/Build/src/buildTransitive/netstandard1.0/Microsoft.AspNetCore.Components.WebAssembly.Build.targets
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/src/Components/WebAssembly/Build/src/targets/StaticWebAssetsWokarounds.targets b/src/Components/WebAssembly/Build/src/targets/StaticWebAssetsWokarounds.targets
new file mode 100644
index 0000000000..141de7cc86
--- /dev/null
+++ b/src/Components/WebAssembly/Build/src/targets/StaticWebAssetsWokarounds.targets
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+ <_BlazorExternalPublishStaticWebAssets
+ Include="%(StaticWebAsset.FullPath)"
+ Condition="'%(StaticWebAsset.SourceType)' != ''" />
+
+
+ <_BlazorNonSharedFilesToPublish Include="@(ResolvedFileToPublish)" Exclude="@(_BlazorExternalPublishStaticWebAssets)" />
+
+ <_BlazorSharedFilesToPublish
+ Include="@(ResolvedFileToPublish)"
+ Exclude="@(_BlazorNonSharedFilesToPublish)"
+ Condition="'%(ResolvedFileToPublish.RelativePath)' == '%(ResolvedFileToPublish.FileName)%(ResolvedFileToPublish.Extension)'"
+ />
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Components/WebAssembly/Build/test/BuildIntegrationTests/PublishIntegrationTest.cs b/src/Components/WebAssembly/Build/test/BuildIntegrationTests/PublishIntegrationTest.cs
index c727b1dad5..de01ab9ee5 100644
--- a/src/Components/WebAssembly/Build/test/BuildIntegrationTests/PublishIntegrationTest.cs
+++ b/src/Components/WebAssembly/Build/test/BuildIntegrationTests/PublishIntegrationTest.cs
@@ -198,6 +198,10 @@ namespace Microsoft.AspNetCore.Components.WebAssembly.Build
Assert.FileExists(result, blazorPublishDirectory, "_framework", "wasm", DotNetJsFileName);
Assert.FileExists(result, blazorPublishDirectory, "_framework", "_bin", "standalone.dll");
Assert.FileExists(result, blazorPublishDirectory, "_framework", "_bin", "Microsoft.Extensions.Logging.Abstractions.dll"); // Verify dependencies are part of the output.
+ // Verify project references appear as static web assets
+ Assert.FileExists(result, blazorPublishDirectory, "_framework", "_bin", "RazorClassLibrary.dll");
+ // Also verify project references to the server project appear in the publish output
+ Assert.FileExists(result, publishDirectory, "RazorClassLibrary.dll");
// Verify static assets are in the publish directory
Assert.FileExists(result, blazorPublishDirectory, "index.html");
diff --git a/src/Components/WebAssembly/Build/testassets/blazorhosted/Program.cs b/src/Components/WebAssembly/Build/testassets/blazorhosted/Program.cs
index e2efcc0c74..b35aacbdcc 100644
--- a/src/Components/WebAssembly/Build/testassets/blazorhosted/Program.cs
+++ b/src/Components/WebAssembly/Build/testassets/blazorhosted/Program.cs
@@ -10,6 +10,7 @@ namespace blazorhosted.Server
public static void Main(string[] args)
{
Console.WriteLine(typeof(IWebHost));
+ Console.WriteLine(typeof(RazorClassLibrary.RCLTest));
}
}
}
diff --git a/src/Components/WebAssembly/Build/testassets/blazorhosted/blazorhosted.csproj b/src/Components/WebAssembly/Build/testassets/blazorhosted/blazorhosted.csproj
index 3b08400ff7..743d8ad48c 100644
--- a/src/Components/WebAssembly/Build/testassets/blazorhosted/blazorhosted.csproj
+++ b/src/Components/WebAssembly/Build/testassets/blazorhosted/blazorhosted.csproj
@@ -6,6 +6,10 @@
+
+
+
+
diff --git a/src/Components/WebAssembly/Build/testassets/razorclasslibrary/RCLTest.cs b/src/Components/WebAssembly/Build/testassets/razorclasslibrary/RCLTest.cs
new file mode 100644
index 0000000000..8f540c8c06
--- /dev/null
+++ b/src/Components/WebAssembly/Build/testassets/razorclasslibrary/RCLTest.cs
@@ -0,0 +1,4 @@
+namespace RazorClassLibrary
+{
+ public class RCLTest {}
+}
diff --git a/src/Components/WebAssembly/Build/testassets/standalone/Program.cs b/src/Components/WebAssembly/Build/testassets/standalone/Program.cs
index 7d2cb4eeea..67b363c346 100644
--- a/src/Components/WebAssembly/Build/testassets/standalone/Program.cs
+++ b/src/Components/WebAssembly/Build/testassets/standalone/Program.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace standalone
{
diff --git a/src/ProjectTemplates/ComponentsWebAssembly.ProjectTemplates/ComponentsWebAssembly-CSharp.Client.csproj.in b/src/ProjectTemplates/ComponentsWebAssembly.ProjectTemplates/ComponentsWebAssembly-CSharp.Client.csproj.in
index e612662f2d..7135afd82c 100644
--- a/src/ProjectTemplates/ComponentsWebAssembly.ProjectTemplates/ComponentsWebAssembly-CSharp.Client.csproj.in
+++ b/src/ProjectTemplates/ComponentsWebAssembly.ProjectTemplates/ComponentsWebAssembly-CSharp.Client.csproj.in
@@ -10,7 +10,7 @@
-
+