From 8a7508d8183968d1b96d259cf8bcc5bbb85981b5 Mon Sep 17 00:00:00 2001 From: Ryan Nowak Date: Mon, 1 Jul 2019 13:56:18 -0700 Subject: [PATCH] Move Blazor HttpClient functionality out of sfx Fixes: #11756 #10505 See description in #11756 --- eng/ProjectReferences.props | 1 + .../Microsoft.AspNetCore.Blazor.Build.csproj | 2 +- ...rosoft.AspNetCore.Blazor.HttpClient.csproj | 10 +++++++ ...etCore.Blazor.HttpClient.netstandard2.0.cs | 18 +++++++++++ .../Http}/src/HttpClientJsonExtensions.cs | 0 ...rosoft.AspNetCore.Blazor.HttpClient.csproj | 17 +++++++++++ .../test/HttpClientJsonExtensionsTest.cs | 0 ....AspNetCore.Blazor.HttpClient.Tests.csproj | 11 +++++++ .../BlazorHosted-CSharp.Client.csproj | 1 + .../BlazorStandalone-CSharp.csproj | 1 + .../StandaloneApp/StandaloneApp.csproj | 1 + src/Components/Components.sln | 30 +++++++++++++++++++ ...ft.AspNetCore.Components.netstandard2.0.cs | 12 -------- .../Microsoft.AspNetCore.Components.csproj | 4 +++ .../src/JsonSerializerOptionsProvider.cs | 0 ...Microsoft.AspNetCore.Components.Web.csproj | 2 +- .../BasicTestApp/BasicTestApp.csproj | 1 + 17 files changed, 97 insertions(+), 14 deletions(-) create mode 100644 src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj create mode 100644 src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs rename src/Components/{Components => Blazor/Http}/src/HttpClientJsonExtensions.cs (100%) create mode 100644 src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj rename src/Components/{Components => Blazor/Http}/test/HttpClientJsonExtensionsTest.cs (100%) create mode 100644 src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj rename src/Components/{Components => Shared}/src/JsonSerializerOptionsProvider.cs (100%) diff --git a/eng/ProjectReferences.props b/eng/ProjectReferences.props index db359ffb9a..932cec9dce 100644 --- a/eng/ProjectReferences.props +++ b/eng/ProjectReferences.props @@ -133,6 +133,7 @@ + diff --git a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj index 21fa447665..ab757d5c82 100644 --- a/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj +++ b/src/Components/Blazor/Build/src/Microsoft.AspNetCore.Blazor.Build.csproj @@ -36,6 +36,6 @@ - + diff --git a/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj new file mode 100644 index 0000000000..8c5f6d9e13 --- /dev/null +++ b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.csproj @@ -0,0 +1,10 @@ + + + + netstandard2.0 + + + + + + diff --git a/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs new file mode 100644 index 0000000000..f6caefbe3e --- /dev/null +++ b/src/Components/Blazor/Http/ref/Microsoft.AspNetCore.Blazor.HttpClient.netstandard2.0.cs @@ -0,0 +1,18 @@ +// 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.Components +{ + public static partial class HttpClientJsonExtensions + { + [System.Diagnostics.DebuggerStepThroughAttribute] + public static System.Threading.Tasks.Task GetJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri) { throw null; } + public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } + public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } + public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } + public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } + public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; } + [System.Diagnostics.DebuggerStepThroughAttribute] + public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; } + } +} diff --git a/src/Components/Components/src/HttpClientJsonExtensions.cs b/src/Components/Blazor/Http/src/HttpClientJsonExtensions.cs similarity index 100% rename from src/Components/Components/src/HttpClientJsonExtensions.cs rename to src/Components/Blazor/Http/src/HttpClientJsonExtensions.cs diff --git a/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj b/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj new file mode 100644 index 0000000000..18bdc5e1fe --- /dev/null +++ b/src/Components/Blazor/Http/src/Microsoft.AspNetCore.Blazor.HttpClient.csproj @@ -0,0 +1,17 @@ + + + + netstandard2.0 + Provides experimental support for using System.Text.Json with HttpClient. Intended for use with Blazor running under WebAssembly. + true + + + + + + + + + + + diff --git a/src/Components/Components/test/HttpClientJsonExtensionsTest.cs b/src/Components/Blazor/Http/test/HttpClientJsonExtensionsTest.cs similarity index 100% rename from src/Components/Components/test/HttpClientJsonExtensionsTest.cs rename to src/Components/Blazor/Http/test/HttpClientJsonExtensionsTest.cs diff --git a/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj b/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj new file mode 100644 index 0000000000..375cc47dde --- /dev/null +++ b/src/Components/Blazor/Http/test/Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj @@ -0,0 +1,11 @@ + + + + netcoreapp3.0 + + + + + + + diff --git a/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj b/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj index 8a62cd5262..9aa80d5333 100644 --- a/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj +++ b/src/Components/Blazor/Templates/src/content/BlazorHosted-CSharp/BlazorHosted-CSharp.Client/BlazorHosted-CSharp.Client.csproj @@ -10,6 +10,7 @@ + diff --git a/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj b/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj index a04cb61258..e6ba9e2f59 100644 --- a/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj +++ b/src/Components/Blazor/Templates/src/content/BlazorStandalone-CSharp/BlazorStandalone-CSharp.csproj @@ -10,6 +10,7 @@ + diff --git a/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj b/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj index 9f796fdbcf..cddd429b6a 100644 --- a/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj +++ b/src/Components/Blazor/testassets/StandaloneApp/StandaloneApp.csproj @@ -8,5 +8,6 @@ + diff --git a/src/Components/Components.sln b/src/Components/Components.sln index 263952ef5c..386152c3d8 100644 --- a/src/Components/Components.sln +++ b/src/Components/Components.sln @@ -222,6 +222,10 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor", "test\testassets\ EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Ignitor.Test", "test\Ignitor.Test\Ignitor.Test.csproj", "{FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}" EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.HttpClient", "Blazor\Http\src\Microsoft.AspNetCore.Blazor.HttpClient.csproj", "{74D21785-2FAB-4266-B7C4-E311EC8EE0DF}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Blazor.HttpClient.Tests", "Blazor\Http\test\Microsoft.AspNetCore.Blazor.HttpClient.Tests.csproj", "{E4C01A3F-D3C1-4639-A6A9-930E918843DD}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -1408,6 +1412,30 @@ Global {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}.Release|x64.Build.0 = Release|Any CPU {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}.Release|x86.ActiveCfg = Release|Any CPU {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA}.Release|x86.Build.0 = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|Any CPU.Build.0 = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|x64.ActiveCfg = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|x64.Build.0 = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|x86.ActiveCfg = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Debug|x86.Build.0 = Debug|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|Any CPU.ActiveCfg = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|Any CPU.Build.0 = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|x64.ActiveCfg = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|x64.Build.0 = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|x86.ActiveCfg = Release|Any CPU + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF}.Release|x86.Build.0 = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|Any CPU.Build.0 = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|x64.ActiveCfg = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|x64.Build.0 = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|x86.ActiveCfg = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Debug|x86.Build.0 = Debug|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|Any CPU.ActiveCfg = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|Any CPU.Build.0 = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|x64.ActiveCfg = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|x64.Build.0 = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|x86.ActiveCfg = Release|Any CPU + {E4C01A3F-D3C1-4639-A6A9-930E918843DD}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE @@ -1513,6 +1541,8 @@ Global {F88118E1-6F4A-4F89-B047-5FFD2889B9F0} = {2FC10057-7A0A-4E34-8302-879925BC0102} {A78CE874-76B7-46FE-8009-1ED5258BA0AA} = {44E0D4F3-4430-4175-B482-0D1AEE4BB699} {FC2A1EB0-A116-4689-92B7-239B1DCCF4CA} = {E9E9CF3C-CE9B-4282-B2BB-97EFC3872798} + {74D21785-2FAB-4266-B7C4-E311EC8EE0DF} = {7260DED9-22A9-4E9D-92F4-5E8A4404DEAF} + {E4C01A3F-D3C1-4639-A6A9-930E918843DD} = {7260DED9-22A9-4E9D-92F4-5E8A4404DEAF} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution SolutionGuid = {CC3C47E1-AD1A-4619-9CD3-E08A0148E5CE} diff --git a/src/Components/Components/ref/Microsoft.AspNetCore.Components.netstandard2.0.cs b/src/Components/Components/ref/Microsoft.AspNetCore.Components.netstandard2.0.cs index 417e114224..10d157f9a7 100644 --- a/src/Components/Components/ref/Microsoft.AspNetCore.Components.netstandard2.0.cs +++ b/src/Components/Components/ref/Microsoft.AspNetCore.Components.netstandard2.0.cs @@ -310,18 +310,6 @@ namespace Microsoft.AspNetCore.Components public static partial class EventHandlers { } - public static partial class HttpClientJsonExtensions - { - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task GetJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri) { throw null; } - public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } - public static System.Threading.Tasks.Task PostJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } - public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } - public static System.Threading.Tasks.Task PutJsonAsync(this System.Net.Http.HttpClient httpClient, string requestUri, object content) { throw null; } - public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; } - [System.Diagnostics.DebuggerStepThroughAttribute] - public static System.Threading.Tasks.Task SendJsonAsync(this System.Net.Http.HttpClient httpClient, System.Net.Http.HttpMethod method, string requestUri, object content) { throw null; } - } public partial interface IComponent { void Configure(Microsoft.AspNetCore.Components.RenderHandle renderHandle); diff --git a/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj b/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj index da740506b5..104048d5c0 100644 --- a/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj +++ b/src/Components/Components/src/Microsoft.AspNetCore.Components.csproj @@ -9,6 +9,10 @@ 3.0 + + + + diff --git a/src/Components/Components/src/JsonSerializerOptionsProvider.cs b/src/Components/Shared/src/JsonSerializerOptionsProvider.cs similarity index 100% rename from src/Components/Components/src/JsonSerializerOptionsProvider.cs rename to src/Components/Shared/src/JsonSerializerOptionsProvider.cs diff --git a/src/Components/Web/src/Microsoft.AspNetCore.Components.Web.csproj b/src/Components/Web/src/Microsoft.AspNetCore.Components.Web.csproj index b673bdbdb7..7515d745de 100644 --- a/src/Components/Web/src/Microsoft.AspNetCore.Components.Web.csproj +++ b/src/Components/Web/src/Microsoft.AspNetCore.Components.Web.csproj @@ -14,7 +14,7 @@ - + diff --git a/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj b/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj index 1892f71a39..9b63d280c8 100644 --- a/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj +++ b/src/Components/test/testassets/BasicTestApp/BasicTestApp.csproj @@ -12,6 +12,7 @@ +