diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 5971f3367b..bec457a835 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -13,21 +13,21 @@ https://github.com/aspnet/Blazor c879c3a911b4c2d6cccd4d6ff2de86a6949cda88 - + https://github.com/aspnet/AspNetCore-Tooling - 187d2dae3f94981518ac37588925fe1414127248 + fd34479f7cb75a088f5517d0a79d9499fdf44036 - + https://github.com/aspnet/AspNetCore-Tooling - 187d2dae3f94981518ac37588925fe1414127248 + fd34479f7cb75a088f5517d0a79d9499fdf44036 - + https://github.com/aspnet/AspNetCore-Tooling - 187d2dae3f94981518ac37588925fe1414127248 + fd34479f7cb75a088f5517d0a79d9499fdf44036 - + https://github.com/aspnet/AspNetCore-Tooling - 187d2dae3f94981518ac37588925fe1414127248 + fd34479f7cb75a088f5517d0a79d9499fdf44036 https://github.com/aspnet/EntityFrameworkCore @@ -57,340 +57,340 @@ https://github.com/aspnet/EntityFrameworkCore 08edd86216be4857b45b47bf0a9b29e98e525c05 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 https://github.com/dotnet/corefx a28176b5ec68b6da1472934fe9493790d1665cae - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/dotnet/core-setup - 20426e8c486d8715337cb6438ec70bc3619a514d + 63abc77da6d99470caa5bfa0465afe244105e595 - + https://github.com/dotnet/core-setup - 20426e8c486d8715337cb6438ec70bc3619a514d + 63abc77da6d99470caa5bfa0465afe244105e595 - + https://github.com/dotnet/core-setup - 20426e8c486d8715337cb6438ec70bc3619a514d + 63abc77da6d99470caa5bfa0465afe244105e595 - + https://github.com/dotnet/corefx - 41489a93acf3f36abcaaaea2003a8fdbb577cf35 + e23119d577e644d2c2a25419c88c1181681358e0 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 https://github.com/dotnet/arcade @@ -404,9 +404,9 @@ https://github.com/dotnet/arcade b5016f5688dc8ca9f3e4811ee7e2e86ad8907a40 - + https://github.com/aspnet/Extensions - 8550f61acc7d78990b7c67ea1647eaff29f80dc3 + bfea1edf9e2e9a5465f331517149c4f543ac2ba6 diff --git a/eng/Versions.props b/eng/Versions.props index 553e0d4c7f..82cc9dd8d3 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -23,95 +23,95 @@ 1.0.0-beta.19274.6 - 3.0.0-preview6-27723-08 - 3.0.0-preview6-27723-08 - 2.1.0-preview6-27723-08 + 3.0.0-preview6-27730-01 + 3.0.0-preview6-27730-01 + 2.1.0-preview6-27730-01 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 4.7.0-preview6.19264.9 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 1.7.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 - 4.6.0-preview6.19273.5 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 1.7.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 + 4.6.0-preview6.19279.8 - 3.0.0-preview6.19273.5 + 3.0.0-preview6.19279.8 0.10.0-preview6.19273.9 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 - 3.0.0-preview6.19274.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 + 3.0.0-preview6.19280.1 3.0.0-preview6.19252.4 3.0.0-preview6.19252.4 @@ -121,10 +121,10 @@ 3.0.0-preview6.19252.4 3.0.0-preview6.19252.4 - 3.0.0-preview6.19274.4 - 3.0.0-preview6.19274.4 - 3.0.0-preview6.19274.4 - 3.0.0-preview6.19274.4 + 3.0.0-preview6.19280.2 + 3.0.0-preview6.19280.2 + 3.0.0-preview6.19280.2 + 3.0.0-preview6.19280.2

Current count:

- + @code { int currentCount = 0; diff --git a/src/Components/test/testassets/BasicTestApp/DispatchingComponent.razor b/src/Components/test/testassets/BasicTestApp/DispatchingComponent.razor index e55cc33965..89997ee1ff 100644 --- a/src/Components/test/testassets/BasicTestApp/DispatchingComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/DispatchingComponent.razor @@ -10,10 +10,10 @@ Result: @result

- - - - + + + + @code { string result; diff --git a/src/Components/test/testassets/BasicTestApp/ElementRefComponent.razor b/src/Components/test/testassets/BasicTestApp/ElementRefComponent.razor index 17010b9d6e..fa00db1d90 100644 --- a/src/Components/test/testassets/BasicTestApp/ElementRefComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/ElementRefComponent.razor @@ -17,11 +17,11 @@ @if (_toggleCapturedElementPresence) { - + } - + diff --git a/src/Components/test/testassets/BasicTestApp/EventBubblingComponent.razor b/src/Components/test/testassets/BasicTestApp/EventBubblingComponent.razor index 5afc89a4fa..17984e9ee6 100644 --- a/src/Components/test/testassets/BasicTestApp/EventBubblingComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/EventBubblingComponent.razor @@ -1,7 +1,7 @@

Bubbling standard event

-
- +
+
@@ -15,14 +15,14 @@

Non-bubbling standard event

-
-

With onfocus:

+
+

With onfocus:

Without onfocus:

Event log

- + @code { string logValue = string.Empty; diff --git a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/ButtonComponent.razor b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/ButtonComponent.razor index 08ffee0422..57264d659c 100644 --- a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/ButtonComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/ButtonComponent.razor @@ -1,5 +1,5 @@ - + @code { [Parameter] int Count { get; set; } diff --git a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/EventCallbackCases.razor b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/EventCallbackCases.razor index b3859bfb0e..20c64b0c95 100644 --- a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/EventCallbackCases.razor +++ b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/EventCallbackCases.razor @@ -27,12 +27,12 @@

Passing Child Content

- +

Passing Child Content

- +
@code { diff --git a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/InnerButton.razor b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/InnerButton.razor index 70eb5f662a..1d6a5e25fb 100644 --- a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/InnerButton.razor +++ b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/InnerButton.razor @@ -1,5 +1,5 @@ - + @code { [Parameter] EventCallback OnClick { get; set; } diff --git a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/StronglyTypedButton.razor b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/StronglyTypedButton.razor index b9520414e2..d4e0904167 100644 --- a/src/Components/test/testassets/BasicTestApp/EventCallbackTest/StronglyTypedButton.razor +++ b/src/Components/test/testassets/BasicTestApp/EventCallbackTest/StronglyTypedButton.razor @@ -1,5 +1,5 @@ - + @code { [Parameter] EventCallback OnClick { get; set; } diff --git a/src/Components/test/testassets/BasicTestApp/EventPreventDefaultComponent.razor b/src/Components/test/testassets/BasicTestApp/EventPreventDefaultComponent.razor index 5a1c7c0b07..2e23df0070 100644 --- a/src/Components/test/testassets/BasicTestApp/EventPreventDefaultComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/EventPreventDefaultComponent.razor @@ -13,14 +13,14 @@

Form with onsubmit handler

-
{ })> - + { })> +

Form without onsubmit handler

- +
@if (didHandleEvent) diff --git a/src/Components/test/testassets/BasicTestApp/ExternalContentPackage.razor b/src/Components/test/testassets/BasicTestApp/ExternalContentPackage.razor index 0f4ef9e5f3..c90b7096da 100644 --- a/src/Components/test/testassets/BasicTestApp/ExternalContentPackage.razor +++ b/src/Components/test/testassets/BasicTestApp/ExternalContentPackage.razor @@ -13,7 +13,7 @@

Click the following button to invoke a JavaScript function.

- + @if (!string.IsNullOrEmpty(result)) { diff --git a/src/Components/test/testassets/BasicTestApp/FocusEventComponent.razor b/src/Components/test/testassets/BasicTestApp/FocusEventComponent.razor index 7eb958bbf5..00843460fa 100644 --- a/src/Components/test/testassets/BasicTestApp/FocusEventComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/FocusEventComponent.razor @@ -1,15 +1,15 @@ -@using System.Collections.Generic +@using System.Collections.Generic

Focus and activation

-

- Input: +

+ Input:

Output: @message

- +

diff --git a/src/Components/test/testassets/BasicTestApp/FormsTest/NotifyPropertyChangedValidationComponent.razor b/src/Components/test/testassets/BasicTestApp/FormsTest/NotifyPropertyChangedValidationComponent.razor index e094ce6ecd..51393a1e3f 100644 --- a/src/Components/test/testassets/BasicTestApp/FormsTest/NotifyPropertyChangedValidationComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/FormsTest/NotifyPropertyChangedValidationComponent.razor @@ -15,14 +15,14 @@ cascade an EditContext to the components that integrate with it.

-
+

User name: - +

Accept terms: - +

diff --git a/src/Components/test/testassets/BasicTestApp/FormsTest/SimpleValidationComponent.razor b/src/Components/test/testassets/BasicTestApp/FormsTest/SimpleValidationComponent.razor index f2cee1b6c4..b78ce413b4 100644 --- a/src/Components/test/testassets/BasicTestApp/FormsTest/SimpleValidationComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/FormsTest/SimpleValidationComponent.razor @@ -5,10 +5,10 @@

- User name: + User name:

- Accept terms: + Accept terms:

diff --git a/src/Components/test/testassets/BasicTestApp/FormsTest/TypicalValidationComponent.razor b/src/Components/test/testassets/BasicTestApp/FormsTest/TypicalValidationComponent.razor index ad2aa89550..8776f05bf9 100644 --- a/src/Components/test/testassets/BasicTestApp/FormsTest/TypicalValidationComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/FormsTest/TypicalValidationComponent.razor @@ -5,30 +5,30 @@

- Name: + Name:

- Age (years): + Age (years):

- Height (optional): + Height (optional):

- Description: + Description:

- Renewal date: + Renewal date:

- Expiry date (optional): + Expiry date (optional):

Ticket class: - + @@ -37,10 +37,10 @@ @person.TicketClass

- Accepts terms: + Accepts terms:

- Is evil: + Is evil:

diff --git a/src/Components/test/testassets/BasicTestApp/HttpClientTest/BinaryHttpRequestsComponent.razor b/src/Components/test/testassets/BasicTestApp/HttpClientTest/BinaryHttpRequestsComponent.razor index 58107214d8..f4906da4fc 100644 --- a/src/Components/test/testassets/BasicTestApp/HttpClientTest/BinaryHttpRequestsComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/HttpClientTest/BinaryHttpRequestsComponent.razor @@ -1,4 +1,4 @@ -@using System.Net +@using System.Net @using System.Net.Http @inject HttpClient Http @@ -6,10 +6,10 @@

URI:
- +

- + @if (responseStatusCode.HasValue) { diff --git a/src/Components/test/testassets/BasicTestApp/HttpClientTest/CookieCounterComponent.razor b/src/Components/test/testassets/BasicTestApp/HttpClientTest/CookieCounterComponent.razor index b2e9ec6101..0065dc34e8 100644 --- a/src/Components/test/testassets/BasicTestApp/HttpClientTest/CookieCounterComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/HttpClientTest/CookieCounterComponent.razor @@ -1,10 +1,10 @@ -@inject System.Net.Http.HttpClient Http +@inject System.Net.Http.HttpClient Http

Cookie counter

The server increments the count by one on each request.

-

TestServer base URL:

- - +

TestServer base URL:

+ + @if (!requestInProgress) { diff --git a/src/Components/test/testassets/BasicTestApp/HttpClientTest/HttpRequestsComponent.razor b/src/Components/test/testassets/BasicTestApp/HttpClientTest/HttpRequestsComponent.razor index 6352a7e7b1..a6c0b9badc 100644 --- a/src/Components/test/testassets/BasicTestApp/HttpClientTest/HttpRequestsComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/HttpClientTest/HttpRequestsComponent.razor @@ -7,12 +7,12 @@

URI:
- +

Method:
- @@ -22,7 +22,7 @@

Request body:
- +

@@ -30,20 +30,20 @@ @foreach (var header in requestHeaders) {

- Name: - Value: - [remove] + Name: + Value: + [remove]
} - +

Request referrer:
- +

- + @if (responseStatusCode.HasValue) { diff --git a/src/Components/test/testassets/BasicTestApp/Index.razor b/src/Components/test/testassets/BasicTestApp/Index.razor index 6a1d2886c9..addf55f07e 100644 --- a/src/Components/test/testassets/BasicTestApp/Index.razor +++ b/src/Components/test/testassets/BasicTestApp/Index.razor @@ -1,7 +1,7 @@ @using Microsoft.AspNetCore.Components.RenderTree
Select test: - diff --git a/src/Components/test/testassets/BasicTestApp/InputEventComponent.razor b/src/Components/test/testassets/BasicTestApp/InputEventComponent.razor index eb469715db..f7aafa6277 100644 --- a/src/Components/test/testassets/BasicTestApp/InputEventComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/InputEventComponent.razor @@ -1,4 +1,4 @@ - +

The text below should update automatically as you type in the text field above

diff --git a/src/Components/test/testassets/BasicTestApp/InteropComponent.razor b/src/Components/test/testassets/BasicTestApp/InteropComponent.razor index 2ae6ccd0ae..987f05ad12 100644 --- a/src/Components/test/testassets/BasicTestApp/InteropComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/InteropComponent.razor @@ -1,9 +1,10 @@ @using Microsoft.JSInterop @using BasicTestApp.InteropTest @using System.Runtime.InteropServices +@using System.Text.Json.Serialization @inject IJSRuntime JSRuntime - +

Invocations

@@ -52,7 +53,6 @@ } @code { - public IDictionary ReturnValues { get; set; } = new Dictionary(); public IDictionary Invocations { get; set; } = new Dictionary(); @@ -75,8 +75,8 @@ await JSRuntime.InvokeAsync( "jsInteropTests.invokeDotNetInteropMethodsAsync", shouldSupportSyncInterop, - new DotNetObjectRef(testDTOTOPassByRef), - new DotNetObjectRef(instanceMethodsTarget)); + DotNetObjectRef.Create(testDTOTOPassByRef), + DotNetObjectRef.Create(instanceMethodsTarget)); if (shouldSupportSyncInterop) { @@ -84,14 +84,14 @@ } Console.WriteLine("Showing interop invocation results."); - var collectResults = await JSRuntime.InvokeAsync>("jsInteropTests.collectInteropResults"); + var collectResults = await JSRuntime.InvokeAsync>("jsInteropTests.collectInteropResults"); - ReturnValues = collectResults.ToDictionary(kvp => kvp.Key,kvp => System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(kvp.Value))); + ReturnValues = collectResults.ToDictionary(kvp => kvp.Key, kvp => System.Text.Encoding.UTF8.GetString(Convert.FromBase64String(kvp.Value))); var invocations = new Dictionary(); foreach (var interopResult in JavaScriptInterop.Invocations) { - var interopResultValue = Json.Serialize(interopResult.Value); + var interopResultValue = JsonSerializer.ToString(interopResult.Value, TestJsonSerializerOptionsProvider.Options); invocations[interopResult.Key] = interopResultValue; } @@ -114,13 +114,15 @@ } var passDotNetObjectByRef = new TestDTO(99999); - var passDotNetObjectByRefArg = new Dictionary + var passDotNetObjectByRefArg = new PassDotNetObjectByRefArgs { - { "stringValue", "My string" }, - { "testDto", new DotNetObjectRef(passDotNetObjectByRef) }, + StringValue = "My string", + TestDto = DotNetObjectRef.Create(passDotNetObjectByRef), }; - ReceiveDotNetObjectByRefAsyncResult = await JSRuntime.InvokeAsync>("receiveDotNetObjectByRefAsync", passDotNetObjectByRefArg); - ReceiveDotNetObjectByRefAsyncResult["testDto"] = ReceiveDotNetObjectByRefAsyncResult["testDto"] == passDotNetObjectByRef ? "Same" : "Different"; + var result = await JSRuntime.InvokeAsync("receiveDotNetObjectByRefAsync", passDotNetObjectByRefArg); + ReceiveDotNetObjectByRefAsyncResult["stringValueUpper"] = result.StringValueUpper; + ReceiveDotNetObjectByRefAsyncResult["testDtoNonSerializedValue"] = result.TestDtoNonSerializedValue; + ReceiveDotNetObjectByRefAsyncResult["testDto"] = result.TestDto.Value == passDotNetObjectByRef ? "Same" : "Different"; ReturnValues["returnPrimitiveAsync"] = (await JSRuntime.InvokeAsync("returnPrimitiveAsync")).ToString(); ReturnValues["returnArrayAsync"] = string.Join(",", (await JSRuntime.InvokeAsync("returnArrayAsync")).Select(x => x.Source).ToArray()); @@ -148,12 +150,30 @@ } var passDotNetObjectByRef = new TestDTO(99999); - var passDotNetObjectByRefArg = new Dictionary + var passDotNetObjectByRefArg = new PassDotNetObjectByRefArgs { - { "stringValue", "My string" }, - { "testDto", new DotNetObjectRef(passDotNetObjectByRef) }, + StringValue = "My string", + TestDto = DotNetObjectRef.Create(passDotNetObjectByRef), }; - ReceiveDotNetObjectByRefResult = inProcRuntime.Invoke>("receiveDotNetObjectByRef", passDotNetObjectByRefArg); - ReceiveDotNetObjectByRefResult["testDto"] = ReceiveDotNetObjectByRefResult["testDto"] == passDotNetObjectByRef ? "Same" : "Different"; + var result = inProcRuntime.Invoke("receiveDotNetObjectByRef", passDotNetObjectByRefArg); + ReceiveDotNetObjectByRefResult["stringValueUpper"] = result.StringValueUpper; + ReceiveDotNetObjectByRefResult["testDtoNonSerializedValue"] = result.TestDtoNonSerializedValue; + ReceiveDotNetObjectByRefResult["testDto"] = result.TestDto.Value == passDotNetObjectByRef ? "Same" : "Different"; + } + + public class PassDotNetObjectByRefArgs + { + public string StringValue { get; set; } + + public DotNetObjectRef TestDto { get; set; } + } + + public class ReceiveDotNetObjectByRefArgs + { + public string StringValueUpper { get; set; } + + public int TestDtoNonSerializedValue { get; set; } + + public DotNetObjectRef TestDto { get; set; } } } diff --git a/src/Components/test/testassets/BasicTestApp/InteropOnInitializationComponent.razor b/src/Components/test/testassets/BasicTestApp/InteropOnInitializationComponent.razor index e3cafe0d65..125db6a477 100644 --- a/src/Components/test/testassets/BasicTestApp/InteropOnInitializationComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/InteropOnInitializationComponent.razor @@ -19,7 +19,7 @@

Value set via JS interop call: - +

@code { diff --git a/src/Components/test/testassets/BasicTestApp/InteropTest/JavaScriptInterop.cs b/src/Components/test/testassets/BasicTestApp/InteropTest/JavaScriptInterop.cs index f1487c06e3..a0f35c8040 100644 --- a/src/Components/test/testassets/BasicTestApp/InteropTest/JavaScriptInterop.cs +++ b/src/Components/test/testassets/BasicTestApp/InteropTest/JavaScriptInterop.cs @@ -4,6 +4,7 @@ using Microsoft.JSInterop; using System; using System.Collections.Generic; +using System.Text.Json; using System.Threading.Tasks; namespace BasicTestApp.InteropTest @@ -50,69 +51,69 @@ namespace BasicTestApp.InteropTest public static void VoidWithThreeParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3) + DotNetObjectRef parameter3) { - Invocations[nameof(VoidWithThreeParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue() }; + Invocations[nameof(VoidWithThreeParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue() }; } [JSInvokable] public static void VoidWithFourParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4) { - Invocations[nameof(VoidWithFourParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4 }; + Invocations[nameof(VoidWithFourParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4 }; } [JSInvokable] public static void VoidWithFiveParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5) { - Invocations[nameof(VoidWithFiveParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5 }; + Invocations[nameof(VoidWithFiveParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5 }; } [JSInvokable] public static void VoidWithSixParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6) { - Invocations[nameof(VoidWithSixParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; + Invocations[nameof(VoidWithSixParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; } [JSInvokable] public static void VoidWithSevenParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7) { - Invocations[nameof(VoidWithSevenParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; + Invocations[nameof(VoidWithSevenParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; } [JSInvokable] public static void VoidWithEightParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7, Segment parameter8) { - Invocations[nameof(VoidWithEightParameters)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; + Invocations[nameof(VoidWithEightParameters)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; } [JSInvokable] @@ -139,67 +140,67 @@ namespace BasicTestApp.InteropTest public static object[] EchoThreeParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3) + DotNetObjectRef parameter3) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue() }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue() }; } [JSInvokable] public static object[] EchoFourParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4 }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4 }; } [JSInvokable] public static object[] EchoFiveParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5 }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5 }; } [JSInvokable] public static object[] EchoSixParameters(ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; } [JSInvokable] public static object[] EchoSevenParameters(ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; } [JSInvokable] public static object[] EchoEightParameters( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7, Segment parameter8) { - return new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; + return new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; } [JSInvokable] @@ -229,9 +230,9 @@ namespace BasicTestApp.InteropTest public static Task VoidWithThreeParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3) + DotNetObjectRef parameter3) { - Invocations[nameof(VoidWithThreeParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue() }; + Invocations[nameof(VoidWithThreeParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue() }; return Task.CompletedTask; } @@ -239,10 +240,10 @@ namespace BasicTestApp.InteropTest public static Task VoidWithFourParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4) { - Invocations[nameof(VoidWithFourParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4 }; + Invocations[nameof(VoidWithFourParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4 }; return Task.CompletedTask; } @@ -250,11 +251,11 @@ namespace BasicTestApp.InteropTest public static Task VoidWithFiveParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5) { - Invocations[nameof(VoidWithFiveParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5 }; + Invocations[nameof(VoidWithFiveParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5 }; return Task.CompletedTask; } @@ -262,12 +263,12 @@ namespace BasicTestApp.InteropTest public static Task VoidWithSixParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6) { - Invocations[nameof(VoidWithSixParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; + Invocations[nameof(VoidWithSixParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6 }; return Task.CompletedTask; } @@ -275,13 +276,13 @@ namespace BasicTestApp.InteropTest public static Task VoidWithSevenParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7) { - Invocations[nameof(VoidWithSevenParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; + Invocations[nameof(VoidWithSevenParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }; return Task.CompletedTask; } @@ -289,14 +290,14 @@ namespace BasicTestApp.InteropTest public static Task VoidWithEightParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7, Segment parameter8) { - Invocations[nameof(VoidWithEightParametersAsync)] = new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; + Invocations[nameof(VoidWithEightParametersAsync)] = new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }; return Task.CompletedTask; } @@ -324,124 +325,142 @@ namespace BasicTestApp.InteropTest public static Task EchoThreeParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3) + DotNetObjectRef parameter3) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue() }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue() }); } [JSInvokable] public static Task EchoFourParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4 }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4 }); } [JSInvokable] public static Task EchoFiveParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5 }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5 }); } [JSInvokable] public static Task EchoSixParametersAsync(ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6 }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6 }); } [JSInvokable] public static Task EchoSevenParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7 }); } [JSInvokable] public static Task EchoEightParametersAsync( ComplexParameter parameter1, byte parameter2, - TestDTO parameter3, + DotNetObjectRef parameter3, int parameter4, long parameter5, float parameter6, List parameter7, Segment parameter8) { - return Task.FromResult(new object[] { parameter1, parameter2, parameter3.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }); + return Task.FromResult(new object[] { parameter1, parameter2, parameter3.Value.GetNonSerializedValue(), parameter4, parameter5, parameter6, parameter7, parameter8 }); } [JSInvokable] - public static Dictionary ReturnDotNetObjectByRef() + public static Dictionary> ReturnDotNetObjectByRef() { - return new Dictionary + return new Dictionary> { - { "Some sync instance", new DotNetObjectRef(new TestDTO(1000)) } + { "Some sync instance", DotNetObjectRef.Create(new TestDTO(1000)) } }; } [JSInvokable] - public static async Task> ReturnDotNetObjectByRefAsync() + public static async Task>> ReturnDotNetObjectByRefAsync() { await Task.Yield(); - return new Dictionary + return new Dictionary> { - { "Some async instance", new DotNetObjectRef(new TestDTO(1001)) } + { "Some async instance", DotNetObjectRef.Create(new TestDTO(1001)) } }; } [JSInvokable] - public static int ExtractNonSerializedValue(TestDTO objectByRef) + public static int ExtractNonSerializedValue(DotNetObjectRef objectByRef) { - return objectByRef.GetNonSerializedValue(); + return objectByRef.Value.GetNonSerializedValue(); } [JSInvokable] - public Dictionary InstanceMethod(Dictionary dict) + public InstanceMethodOutput InstanceMethod(InstanceMethodInput input) { // This method shows we can pass in values marshalled both as JSON (the dict itself) // and by ref (the incoming dtoByRef), plus that we can return values marshalled as // JSON (the returned dictionary) and by ref (the outgoingByRef value) - return new Dictionary + return new InstanceMethodOutput { - { "thisTypeName", GetType().Name }, - { "stringValueUpper", ((string)dict["stringValue"]).ToUpperInvariant() }, - { "incomingByRef", ((TestDTO)dict["dtoByRef"]).GetNonSerializedValue() }, - { "outgoingByRef", new DotNetObjectRef(new TestDTO(1234)) }, + ThisTypeName = GetType().Name, + StringValueUpper = input.StringValue.ToUpperInvariant(), + IncomingByRef = input.DTOByRef.Value.GetNonSerializedValue(), + OutgoingByRef = DotNetObjectRef.Create(new TestDTO(1234)), }; } [JSInvokable] - public async Task> InstanceMethodAsync(Dictionary dict) + public async Task InstanceMethodAsync(InstanceMethodInput input) { - // This method shows we can pass in values marshalled both as JSON (the dict itself) + // This method shows we can pass in values marshalled both as JSON // and by ref (the incoming dtoByRef), plus that we can return values marshalled as // JSON (the returned dictionary) and by ref (the outgoingByRef value) await Task.Yield(); - return new Dictionary + return new InstanceMethodOutput { - { "thisTypeName", GetType().Name }, - { "stringValueUpper", ((string)dict["stringValue"]).ToUpperInvariant() }, - { "incomingByRef", ((TestDTO)dict["dtoByRef"]).GetNonSerializedValue() }, - { "outgoingByRef", new DotNetObjectRef(new TestDTO(1234)) }, + ThisTypeName = GetType().Name, + StringValueUpper = input.StringValue.ToUpperInvariant(), + IncomingByRef = input.DTOByRef.Value.GetNonSerializedValue(), + OutgoingByRef = DotNetObjectRef.Create(new TestDTO(1234)), }; } + + public class InstanceMethodInput + { + public string StringValue { get; set; } + + public DotNetObjectRef DTOByRef { get; set; } + } + + public class InstanceMethodOutput + { + public string ThisTypeName { get; set; } + + public string StringValueUpper { get; set; } + + public int IncomingByRef { get; set; } + + public DotNetObjectRef OutgoingByRef { get; set; } + } } } diff --git a/src/Components/test/testassets/BasicTestApp/InteropTest/Segment.cs b/src/Components/test/testassets/BasicTestApp/InteropTest/Segment.cs index 2d7967775d..09c9cf282e 100644 --- a/src/Components/test/testassets/BasicTestApp/InteropTest/Segment.cs +++ b/src/Components/test/testassets/BasicTestApp/InteropTest/Segment.cs @@ -3,7 +3,7 @@ namespace BasicTestApp.InteropTest { - public struct Segment + public class Segment { public string Source { get; set; } public int Start { get; set; } diff --git a/src/Components/test/testassets/BasicTestApp/KeyCasesComponent.razor b/src/Components/test/testassets/BasicTestApp/KeyCasesComponent.razor index ab5271118d..7cf94526d9 100644 --- a/src/Components/test/testassets/BasicTestApp/KeyCasesComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/KeyCasesComponent.razor @@ -1,9 +1,9 @@ -@using Microsoft.JSInterop +@using System.Text.Json.Serialization

Model

- - + +

Output

@@ -61,7 +61,7 @@ void Update() { renderContext.UpdateCount++; - parsedRootNode = Json.Deserialize(modelJson); + parsedRootNode = JsonSerializer.Parse(modelJson, TestJsonSerializerOptionsProvider.Options); } public class RenderContext diff --git a/src/Components/test/testassets/BasicTestApp/KeyCasesTreeNode.razor b/src/Components/test/testassets/BasicTestApp/KeyCasesTreeNode.razor index 7634bb95f0..551038293c 100644 --- a/src/Components/test/testassets/BasicTestApp/KeyCasesTreeNode.razor +++ b/src/Components/test/testassets/BasicTestApp/KeyCasesTreeNode.razor @@ -21,7 +21,7 @@ { if (child.Key != null) { - + } else { @@ -35,7 +35,7 @@ @code { public class Node { - public object Key { get; set; } + public string Key { get; set; } public string Label { get; set; } public List Children { get; set; } } diff --git a/src/Components/test/testassets/BasicTestApp/KeyPressEventComponent.razor b/src/Components/test/testassets/BasicTestApp/KeyPressEventComponent.razor index bc8f8b95ea..31a2248609 100644 --- a/src/Components/test/testassets/BasicTestApp/KeyPressEventComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/KeyPressEventComponent.razor @@ -1,6 +1,6 @@ -@using Microsoft.JSInterop +@using System.Text.Json.Serialization -Type here: +Type here:
    @foreach (var key in keysPressed) { @@ -13,7 +13,7 @@ Type here: void OnKeyPressed(UIKeyboardEventArgs eventArgs) { - Console.WriteLine(Json.Serialize(eventArgs)); + Console.WriteLine(JsonSerializer.ToString(eventArgs)); keysPressed.Add(eventArgs.Key); } } diff --git a/src/Components/test/testassets/BasicTestApp/MarkupBlockComponent.razor b/src/Components/test/testassets/BasicTestApp/MarkupBlockComponent.razor index 186eeec72e..28055dbff4 100644 --- a/src/Components/test/testassets/BasicTestApp/MarkupBlockComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/MarkupBlockComponent.razor @@ -16,7 +16,7 @@ [@((RenderFragment)EmitMarkupBlock)]
- +

Markup string

diff --git a/src/Components/test/testassets/BasicTestApp/MouseEventComponent.razor b/src/Components/test/testassets/BasicTestApp/MouseEventComponent.razor index 2bba6f2b62..8b3fe5cd0a 100644 --- a/src/Components/test/testassets/BasicTestApp/MouseEventComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/MouseEventComponent.razor @@ -1,5 +1,5 @@ @using System.Collections.Generic -@using Microsoft.JSInterop +@using System.Text.Json.Serialization

Mouse position

@@ -7,16 +7,16 @@ Output: @message

- Mouseover: + Mouseover:

- Mousemove city! + Mousemove city!

- Mousedown: + Mousedown:

- +

@@ -65,7 +65,7 @@ void DumpEvent(UIMouseEventArgs e) { - Console.WriteLine(Json.Serialize(e)); + Console.WriteLine(JsonSerializer.ToString(e)); } void Clear() diff --git a/src/Components/test/testassets/BasicTestApp/MultipleChildContent.razor b/src/Components/test/testassets/BasicTestApp/MultipleChildContent.razor index c6a5e9f624..9229fb49ae 100644 --- a/src/Components/test/testassets/BasicTestApp/MultipleChildContent.razor +++ b/src/Components/test/testassets/BasicTestApp/MultipleChildContent.razor @@ -11,7 +11,7 @@ -Toggle: +Toggle: @code { List Items { get; } = new List() diff --git a/src/Components/test/testassets/BasicTestApp/PrerenderedToInteractiveTransition.razor b/src/Components/test/testassets/BasicTestApp/PrerenderedToInteractiveTransition.razor index 27bb0041cf..192efbacd0 100644 --- a/src/Components/test/testassets/BasicTestApp/PrerenderedToInteractiveTransition.razor +++ b/src/Components/test/testassets/BasicTestApp/PrerenderedToInteractiveTransition.razor @@ -12,7 +12,7 @@

Clicks: @count - +

@code { diff --git a/src/Components/test/testassets/BasicTestApp/PropertiesChangedHandlerParent.razor b/src/Components/test/testassets/BasicTestApp/PropertiesChangedHandlerParent.razor index b201311876..476e8cbb10 100644 --- a/src/Components/test/testassets/BasicTestApp/PropertiesChangedHandlerParent.razor +++ b/src/Components/test/testassets/BasicTestApp/PropertiesChangedHandlerParent.razor @@ -1,5 +1,5 @@ - - + + @code { private int valueToSupply = 100; diff --git a/src/Components/test/testassets/BasicTestApp/RenderFragmentToggler.razor b/src/Components/test/testassets/BasicTestApp/RenderFragmentToggler.razor index fb6b98aba6..a13806f756 100644 --- a/src/Components/test/testassets/BasicTestApp/RenderFragmentToggler.razor +++ b/src/Components/test/testassets/BasicTestApp/RenderFragmentToggler.razor @@ -1,4 +1,4 @@ -
+

Fragment will be toggled below

@if (showFragment) @@ -6,7 +6,7 @@ @ExampleFragment } - +

The end

diff --git a/src/Components/test/testassets/BasicTestApp/ReorderingFocusComponent.razor b/src/Components/test/testassets/BasicTestApp/ReorderingFocusComponent.razor index 594555a689..bc06f23056 100644 --- a/src/Components/test/testassets/BasicTestApp/ReorderingFocusComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/ReorderingFocusComponent.razor @@ -11,9 +11,9 @@
    @foreach (var item in todoItems.Where(item => !item.IsDone)) { -
  • - - +
  • + +
  • }
@@ -23,9 +23,9 @@
    @foreach (var item in todoItems.Where(item => item.IsDone)) { -
  • - - +
  • + +
  • }
diff --git a/src/Components/test/testassets/BasicTestApp/RouterTest/Links.razor b/src/Components/test/testassets/BasicTestApp/RouterTest/Links.razor index 6c405d4774..fdedf1852f 100644 --- a/src/Components/test/testassets/BasicTestApp/RouterTest/Links.razor +++ b/src/Components/test/testassets/BasicTestApp/RouterTest/Links.razor @@ -14,11 +14,11 @@
  • With more parameters
  • - - diff --git a/src/Components/test/testassets/BasicTestApp/RouterTest/UriHelperComponent.razor b/src/Components/test/testassets/BasicTestApp/RouterTest/UriHelperComponent.razor index c27f827a6d..5d5d2cf4ec 100644 --- a/src/Components/test/testassets/BasicTestApp/RouterTest/UriHelperComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/RouterTest/UriHelperComponent.razor @@ -1,7 +1,7 @@ @inject IUriHelper UriHelper @inject Microsoft.JSInterop.IJSRuntime JSRuntime - + @UrlLocation diff --git a/src/Components/test/testassets/BasicTestApp/SvgComponent.razor b/src/Components/test/testassets/BasicTestApp/SvgComponent.razor index 4c538e6c2d..2cece59303 100644 --- a/src/Components/test/testassets/BasicTestApp/SvgComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/SvgComponent.razor @@ -2,7 +2,7 @@ - + @code { int radius = 10; diff --git a/src/Components/test/testassets/BasicTestApp/TestJsonSerializerOptionsProvider.cs b/src/Components/test/testassets/BasicTestApp/TestJsonSerializerOptionsProvider.cs new file mode 100644 index 0000000000..d125ae306d --- /dev/null +++ b/src/Components/test/testassets/BasicTestApp/TestJsonSerializerOptionsProvider.cs @@ -0,0 +1,15 @@ +// 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.Text.Json.Serialization; + +namespace BasicTestApp +{ + internal static class TestJsonSerializerOptionsProvider + { + public static JsonSerializerOptions Options { get; } = new JsonSerializerOptions + { + PropertyNamingPolicy = JsonNamingPolicy.CamelCase, + }; + } +} diff --git a/src/Components/test/testassets/BasicTestApp/TouchEventComponent.razor b/src/Components/test/testassets/BasicTestApp/TouchEventComponent.razor index 0a7fe9e462..3e11741903 100644 --- a/src/Components/test/testassets/BasicTestApp/TouchEventComponent.razor +++ b/src/Components/test/testassets/BasicTestApp/TouchEventComponent.razor @@ -1,5 +1,5 @@ @using System.Collections.Generic -@using Microsoft.JSInterop +@using System.Text.Json.Serialization

    Touch position

    @@ -7,17 +7,17 @@ Output: @message

    -

    - +

    @@ -28,7 +28,7 @@ void OnTouch(UITouchEventArgs e) { message += e.Type; - Console.WriteLine(Json.Serialize(e)); + Console.WriteLine(JsonSerializer.ToString(e)); StateHasChanged(); } diff --git a/src/Components/test/testassets/ComponentsApp.App/Pages/Counter.razor b/src/Components/test/testassets/ComponentsApp.App/Pages/Counter.razor index 572f9c88dc..ea87f6be2d 100644 --- a/src/Components/test/testassets/ComponentsApp.App/Pages/Counter.razor +++ b/src/Components/test/testassets/ComponentsApp.App/Pages/Counter.razor @@ -1,10 +1,10 @@ -@page "/counter" +@page "/counter"

    Counter

    Current count: @currentCount

    - + @code { int currentCount = 0; diff --git a/src/Components/test/testassets/ComponentsApp.App/Pages/Error.razor b/src/Components/test/testassets/ComponentsApp.App/Pages/Error.razor index cb1be064f1..5bcc5fd85e 100644 --- a/src/Components/test/testassets/ComponentsApp.App/Pages/Error.razor +++ b/src/Components/test/testassets/ComponentsApp.App/Pages/Error.razor @@ -7,7 +7,7 @@ } else { - + } @code { public bool ShouldCauseError { get; set; } diff --git a/src/Components/test/testassets/ComponentsApp.App/Shared/NavMenu.razor b/src/Components/test/testassets/ComponentsApp.App/Shared/NavMenu.razor index 38e23a6b6d..daace22537 100644 --- a/src/Components/test/testassets/ComponentsApp.App/Shared/NavMenu.razor +++ b/src/Components/test/testassets/ComponentsApp.App/Shared/NavMenu.razor @@ -1,11 +1,11 @@ -
    +