diff --git a/eng/Build.props b/eng/Build.props index ef1a7776b6..e47402faf8 100644 --- a/eng/Build.props +++ b/eng/Build.props @@ -17,7 +17,6 @@ ()?.InformationalVersion; - - using (var key = context.CreateKey(GetKeyName())) - { - key.SetValue(null, _nameId); - key.SetValue("Package", Guid.Parse(_packageGuid).ToString("B")); - key.SetValue("ProductDetails", _detailsId); - key.SetValue("UseInterface", false); - key.SetValue("UseVSProductID", false); - - if (version != null) - { - key.SetValue("PID", version); - } - } - } - - public override void Unregister(RegistrationContext context) - { - context.RemoveKey(GetKeyName()); - } - } -} diff --git a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/AutoRebuildService.cs b/src/Components/Blazor/BlazorExtension/src/AutoRebuild/AutoRebuildService.cs deleted file mode 100644 index f3aa9b195b..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/AutoRebuildService.cs +++ /dev/null @@ -1,147 +0,0 @@ -// 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 Microsoft.VisualStudio.Shell.Interop; -using System; -using System.Diagnostics; -using System.IO; -using System.IO.Pipes; -using System.Security.AccessControl; -using System.Security.Principal; -using System.Threading; -using System.Threading.Tasks; -using Package = Microsoft.VisualStudio.Shell.Package; -using ThreadHelper = Microsoft.VisualStudio.Shell.ThreadHelper; - -namespace Microsoft.VisualStudio.BlazorExtension -{ - /// - /// The counterpart to VSForWindowsRebuildService.cs in the Blazor.Server project. - /// Listens for named pipe connections and rebuilds projects on request. - /// - internal class AutoRebuildService - { - private const int _protocolVersion = 1; - private readonly BuildEventsWatcher _buildEventsWatcher; - private readonly string _pipeName; - - public AutoRebuildService(BuildEventsWatcher buildEventsWatcher) - { - _buildEventsWatcher = buildEventsWatcher ?? throw new ArgumentNullException(nameof(buildEventsWatcher)); - _pipeName = $"BlazorAutoRebuild\\{Process.GetCurrentProcess().Id}"; - } - - public void Listen() - { - _ = AddBuildServiceNamedPipeServerAsync(); - } - - private Task AddBuildServiceNamedPipeServerAsync() - { - return Task.Factory.StartNew(async () => - { - try - { - var identity = WindowsIdentity.GetCurrent(); - var identifier = identity.Owner; - var security = new PipeSecurity(); - - // Restrict access to just this account. - var rule = new PipeAccessRule(identifier, PipeAccessRights.ReadWrite | PipeAccessRights.CreateNewInstance, AccessControlType.Allow); - security.AddAccessRule(rule); - security.SetOwner(identifier); - - // And our current elevation level - var principal = new WindowsPrincipal(identity); - var isServerElevated = principal.IsInRole(WindowsBuiltInRole.Administrator); - - using (var serverPipe = new NamedPipeServerStream( - _pipeName, - PipeDirection.InOut, - NamedPipeServerStream.MaxAllowedServerInstances, - PipeTransmissionMode.Byte, - PipeOptions.Asynchronous | PipeOptions.WriteThrough, - 0x10000, // 64k input buffer - 0x10000, // 64k output buffer - security, - HandleInheritability.None)) - { - // As soon as we receive a connection, spin up another background - // listener to wait for the next connection - await serverPipe.WaitForConnectionAsync(); - _ = AddBuildServiceNamedPipeServerAsync(); - - await HandleRequestAsync(serverPipe, isServerElevated); - } - } - catch (Exception ex) - { - await AttemptLogErrorAsync( - $"Error in Blazor AutoRebuildService:\n{ex.Message}\n{ex.StackTrace}"); - } - }, CancellationToken.None, TaskCreationOptions.LongRunning, TaskScheduler.Default); - } - - private async Task HandleRequestAsync(NamedPipeServerStream stream, bool isServerElevated) - { - // Protocol: - // 1. Send a "protocol version" number to the client - // 2. Receive the project path from the client - // If it is the special string "abort", gracefully disconnect and end - // This is to allow for mismatches between server and client protocol version - // 3. Receive the "if not built since" timestamp from the client - // 4. Perform the build, then send back the success/failure result flag - // Keep in sync with VSForWindowsRebuildService.cs in the Blazor.Server project - // In the future we may extend this to getting back build error details - await stream.WriteIntAsync(_protocolVersion); - var projectPath = await stream.ReadStringAsync(); - - // We can't do the security check for elevation until we read from the stream. - if (isServerElevated != IsClientElevated(stream)) - { - return; - } - - if (projectPath.Equals("abort", StringComparison.Ordinal)) - { - return; - } - - var allowExistingBuildsSince = await stream.ReadDateTimeAsync(); - var buildResult = await _buildEventsWatcher.PerformBuildAsync(projectPath, allowExistingBuildsSince); - await stream.WriteBoolAsync(buildResult); - } - - private async Task AttemptLogErrorAsync(string message) - { - if (!ThreadHelper.CheckAccess()) - { - await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); - } - - var outputWindow = (IVsOutputWindow)Package.GetGlobalService(typeof(SVsOutputWindow)); - if (outputWindow != null) - { - outputWindow.GetPane(VSConstants.OutputWindowPaneGuid.BuildOutputPane_guid, out var pane); - if (pane != null) - { - pane.OutputString(message); - pane.Activate(); - } - } - } - - private bool? IsClientElevated(NamedPipeServerStream stream) - { - bool? isClientElevated = null; - stream.RunAsClient(() => - { - var identity = WindowsIdentity.GetCurrent(ifImpersonating: true); - var principal = new WindowsPrincipal(identity); - isClientElevated = principal.IsInRole(WindowsBuiltInRole.Administrator); - }); - - return isClientElevated; - } - } -} diff --git a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/BuildEventsWatcher.cs b/src/Components/Blazor/BlazorExtension/src/AutoRebuild/BuildEventsWatcher.cs deleted file mode 100644 index e05f05f28f..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/BuildEventsWatcher.cs +++ /dev/null @@ -1,184 +0,0 @@ -// 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.Threading.Tasks; -using Microsoft.VisualStudio.Shell; -using Microsoft.VisualStudio.Shell.Interop; - -namespace Microsoft.VisualStudio.BlazorExtension -{ - /// - /// Watches for Blazor project build events, starts new builds, and tracks builds in progress. - /// - internal class BuildEventsWatcher : IVsUpdateSolutionEvents2 - { - private const string BlazorProjectCapability = "Blazor"; - private readonly IVsSolution _vsSolution; - private readonly IVsSolutionBuildManager _vsBuildManager; - private readonly object mostRecentBuildInfosLock = new object(); - private readonly Dictionary mostRecentBuildInfos - = new Dictionary(StringComparer.OrdinalIgnoreCase); - - public BuildEventsWatcher(IVsSolution vsSolution, IVsSolutionBuildManager vsBuildManager) - { - _vsSolution = vsSolution ?? throw new ArgumentNullException(nameof(vsSolution)); - _vsBuildManager = vsBuildManager ?? throw new ArgumentNullException(nameof(vsBuildManager)); - } - - public Task PerformBuildAsync(string projectPath, DateTime allowExistingBuildsSince) - { - BuildInfo newBuildInfo; - - lock (mostRecentBuildInfosLock) - { - if (mostRecentBuildInfos.TryGetValue(projectPath, out var existingInfo)) - { - // If there's a build in progress, we'll join that even if it was started - // before allowExistingBuildsSince, because it's too messy to cancel - // in-progress builds. On rare occasions if the user is editing files while - // a build is in progress they *might* see a not-latest build when they - // reload, but then they just have to reload again. - var acceptBuild = !existingInfo.TaskCompletionSource.Task.IsCompleted - || existingInfo.StartTime > allowExistingBuildsSince; - if (acceptBuild) - { - return existingInfo.TaskCompletionSource.Task; - } - } - - // We're going to start a new build now. Track the BuildInfo for it even - // before it starts so other incoming build requests can join it. - mostRecentBuildInfos[projectPath] = newBuildInfo = new BuildInfo(); - } - - return PerformNewBuildAsync(projectPath, newBuildInfo); - } - - public int UpdateSolution_Begin(ref int pfCancelUpdate) - => VSConstants.S_OK; - - public int UpdateSolution_Done(int fSucceeded, int fModified, int fCancelCommand) - => VSConstants.S_OK; - - public int UpdateSolution_StartUpdate(ref int pfCancelUpdate) - => VSConstants.S_OK; - - public int UpdateSolution_Cancel() - => VSConstants.S_OK; - - public int OnActiveProjectCfgChange(IVsHierarchy pIVsHierarchy) - => VSConstants.S_OK; - - public int UpdateProjectCfg_Begin(IVsHierarchy pHierProj, IVsCfg pCfgProj, IVsCfg pCfgSln, uint dwAction, ref int pfCancel) - { - ThreadHelper.ThrowIfNotOnUIThread(); - - if (IsBlazorProject(pHierProj)) - { - // This method runs both for manually-invoked builds and for builds triggered automatically - // by PerformNewBuildAsync(). In the case where it's a manually-invoked build, make sure - // there's an in-progress BuildInfo so that if there are further builds requests while the - // build is still in progress we can join them onto this existing build. - - var projectPath = GetProjectPath(pHierProj); - lock (mostRecentBuildInfosLock) - { - var hasBuildInProgress = - mostRecentBuildInfos.TryGetValue(projectPath, out var existingInfo) - && !existingInfo.TaskCompletionSource.Task.IsCompleted; - if (!hasBuildInProgress) - { - mostRecentBuildInfos[projectPath] = new BuildInfo(); - } - } - } - - return VSConstants.S_OK; - } - - public int UpdateProjectCfg_Done(IVsHierarchy pHierProj, IVsCfg pCfgProj, IVsCfg pCfgSln, uint dwAction, int fSuccess, int fCancel) - { - ThreadHelper.ThrowIfNotOnUIThread(); - - if (IsBlazorProject(pHierProj)) - { - var buildResult = fSuccess == 1; - var projectPath = GetProjectPath(pHierProj); - - // Mark pending build info as completed - BuildInfo foundInfo = null; - lock (mostRecentBuildInfosLock) - { - mostRecentBuildInfos.TryGetValue(projectPath, out foundInfo); - } - if (foundInfo != null) - { - foundInfo.TaskCompletionSource.TrySetResult(buildResult); - } - } - - return VSConstants.S_OK; - } - - private async Task PerformNewBuildAsync(string projectPath, BuildInfo buildInfo) - { - // Switch to the UI thread and request the build - var didStartBuild = await ThreadHelper.JoinableTaskFactory.RunAsync(async delegate - { - await ThreadHelper.JoinableTaskFactory.SwitchToMainThreadAsync(); - - var hr = _vsSolution.GetProjectOfUniqueName(projectPath, out var hierarchy); - if (hr != VSConstants.S_OK) - { - return false; - } - - hr = _vsBuildManager.StartSimpleUpdateProjectConfiguration( - hierarchy, - /* not used */ null, - /* not used */ null, - (uint)VSSOLNBUILDUPDATEFLAGS.SBF_OPERATION_BUILD, - /* other flags */ 0, - /* suppress dialogs */ 1); - if (hr != VSConstants.S_OK) - { - return false; - } - - return true; - }); - - if (!didStartBuild) - { - // Since the build didn't start, make sure nobody's waiting for it - buildInfo.TaskCompletionSource.TrySetResult(false); - } - - return await buildInfo.TaskCompletionSource.Task; - } - - private static bool IsBlazorProject(IVsHierarchy pHierProj) - => pHierProj.IsCapabilityMatch(BlazorProjectCapability); - - private static string GetProjectPath(IVsHierarchy pHierProj) - { - ThreadHelper.ThrowIfNotOnUIThread(); - ErrorHandler.ThrowOnFailure(((IVsProject)pHierProj).GetMkDocument((uint)VSConstants.VSITEMID.Root, out var projectPath), VSConstants.E_NOTIMPL); - return projectPath; - } - - class BuildInfo - { - public DateTime StartTime { get; } - public TaskCompletionSource TaskCompletionSource { get; } - - public BuildInfo() - { - StartTime = DateTime.Now; - TaskCompletionSource = new TaskCompletionSource(); - } - } - } -} diff --git a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/StreamProtocolExtensions.cs b/src/Components/Blazor/BlazorExtension/src/AutoRebuild/StreamProtocolExtensions.cs deleted file mode 100644 index 4c13dc9588..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/AutoRebuild/StreamProtocolExtensions.cs +++ /dev/null @@ -1,49 +0,0 @@ -// 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.IO; -using System.Text; -using System.Threading.Tasks; - -namespace Microsoft.VisualStudio.BlazorExtension -{ - internal static class StreamProtocolExtensions - { - public static async Task ReadStringAsync(this Stream stream) - { - var length = BitConverter.ToInt32(await ReadBytesAsync(stream, 4), 0); - var utf8Bytes = await ReadBytesAsync(stream, length); - return Encoding.UTF8.GetString(utf8Bytes); - } - - public static async Task ReadDateTimeAsync(this Stream stream) - { - var ticksBytes = await ReadBytesAsync(stream, 8); - var ticks = BitConverter.ToInt64(ticksBytes, 0); - return new DateTime(ticks); - } - - public static async Task WriteBoolAsync(this Stream stream, bool value) - { - var byteVal = value ? (byte)1 : (byte)0; - await stream.WriteAsync(new[] { byteVal }, 0, 1); - } - - public static async Task WriteIntAsync(this Stream stream, int value) - { - await stream.WriteAsync(BitConverter.GetBytes(value), 0, 4); - } - - private static async Task ReadBytesAsync(Stream stream, int exactLength) - { - var buf = new byte[exactLength]; - var bytesRead = 0; - while (bytesRead < exactLength) - { - bytesRead += await stream.ReadAsync(buf, bytesRead, exactLength - bytesRead); - } - return buf; - } - } -} diff --git a/src/Components/Blazor/BlazorExtension/src/BlazorPackage.cs b/src/Components/Blazor/BlazorExtension/src/BlazorPackage.cs deleted file mode 100644 index fd956856ac..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/BlazorPackage.cs +++ /dev/null @@ -1,44 +0,0 @@ -// 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.Runtime.InteropServices; -using System.Threading; -using System.Threading.Tasks; -using Microsoft.VisualStudio.Shell; -using Microsoft.VisualStudio.Shell.Interop; -using Task = System.Threading.Tasks.Task; - -namespace Microsoft.VisualStudio.BlazorExtension -{ - // We mainly have a package so we can have an "About" dialog entry. - [PackageRegistration(UseManagedResourcesOnly = true, AllowsBackgroundLoading = true)] - [AboutDialogInfo(PackageGuidString, "ASP.NET Core Blazor Language Services", "#110", "112")] - [Guid(BlazorPackage.PackageGuidString)] - [ProvideAutoLoad(UIContextGuids80.SolutionExists, PackageAutoLoadFlags.BackgroundLoad)] - public sealed class BlazorPackage : AsyncPackage - { - public const string PackageGuidString = "d9fe04bc-57a7-4107-915e-3a5c2f9e19fb"; - - protected async override Task InitializeAsync(CancellationToken cancellationToken, IProgress progress) - { - await base.InitializeAsync(cancellationToken, progress); - - await JoinableTaskFactory.SwitchToMainThreadAsync(); - - // Create build watcher. No need to unadvise, as this only happens once anyway. - var solution = (IVsSolution)await GetServiceAsync(typeof(IVsSolution)); - var buildManager = (IVsSolutionBuildManager)await GetServiceAsync(typeof(SVsSolutionBuildManager)); - - // According to the docs, this can happen if VS shuts down while our package is loading. - if (solution == null || buildManager == null) - { - var buildWatcher = new BuildEventsWatcher(solution, buildManager); - var hr = buildManager.AdviseUpdateSolutionEvents(buildWatcher, out var cookie); - Marshal.ThrowExceptionForHR(hr); - - new AutoRebuildService(buildWatcher).Listen(); - } - } - } -} diff --git a/src/Components/Blazor/BlazorExtension/src/CodeSnippets.pkgdef b/src/Components/Blazor/BlazorExtension/src/CodeSnippets.pkgdef deleted file mode 100644 index 53ad976e64..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/CodeSnippets.pkgdef +++ /dev/null @@ -1,2 +0,0 @@ -[$RootKey$\Languages\CodeExpansions\CSharp\Paths] -"Blazor"="$PackageFolder$\CodeSnippets\Blazor" \ No newline at end of file diff --git a/src/Components/Blazor/BlazorExtension/src/CodeSnippets/Blazor/para.snippet b/src/Components/Blazor/BlazorExtension/src/CodeSnippets/Blazor/para.snippet deleted file mode 100644 index 25959d17f0..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/CodeSnippets/Blazor/para.snippet +++ /dev/null @@ -1,31 +0,0 @@ - - - -
- para - para - Code snippet for an automatically implemented parameter for Blazor - Microsoft - - Expansion - -
- - - - type - Parameter type - int - - - property - Parameter name - MyParameter - - - - - - -
-
\ No newline at end of file diff --git a/src/Components/Blazor/BlazorExtension/src/Content/WebConfiguration.png b/src/Components/Blazor/BlazorExtension/src/Content/WebConfiguration.png deleted file mode 100644 index 87f68b0726..0000000000 Binary files a/src/Components/Blazor/BlazorExtension/src/Content/WebConfiguration.png and /dev/null differ diff --git a/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj b/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj deleted file mode 100644 index 10f7b7f541..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/Microsoft.VisualStudio.BlazorExtension.csproj +++ /dev/null @@ -1,148 +0,0 @@ - - - - net472 - - - RoslynDev - - - CommonExtensions - Microsoft\Blazor - - - false - - - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - false - - false - true - true - false - true - - - false - - - - - - - true - false - true - - true - true - - - - - <_TemplatePackage Include="$(ArtifactsShippingPackagesDir)Microsoft.AspNetCore.Blazor.Templates.*.nupkg" /> - - - - - - - ProjectTemplates\ - - - - - - - - - - - - - - - - - Content\THIRD-PARTY-NOTICES.txt - - - Content\LICENSE.txt - - - - - - - - - - - - - - - - - false - - - - - true - VSPackage - - - - - - - - - - - - - - - - - - 16.0.$(VersionSuffixDateStamp).$(VersionSuffixBuildOfTheDay) - - 42.42.42.4242424 - $(VsixVersion) - - diff --git a/src/Components/Blazor/BlazorExtension/src/Resources.resx b/src/Components/Blazor/BlazorExtension/src/Resources.resx deleted file mode 100644 index d0fc1b1a60..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/Resources.resx +++ /dev/null @@ -1,132 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - ASP.NET Core Blazor Language Services - About dialog title - - - Provides Visual Studio support for ASP.NET Core Blazor - About dialog description - - - - Resources\BlazorPackage.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - \ No newline at end of file diff --git a/src/Components/Blazor/BlazorExtension/src/Resources/BlazorPackage.ico b/src/Components/Blazor/BlazorExtension/src/Resources/BlazorPackage.ico deleted file mode 100644 index d323b07fb8..0000000000 Binary files a/src/Components/Blazor/BlazorExtension/src/Resources/BlazorPackage.ico and /dev/null differ diff --git a/src/Components/Blazor/BlazorExtension/src/Templates.pkgdef b/src/Components/Blazor/BlazorExtension/src/Templates.pkgdef deleted file mode 100644 index a5b41e7c29..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/Templates.pkgdef +++ /dev/null @@ -1,2 +0,0 @@ -[$RootKey$\TemplateEngine\Templates\Blazor\0.8.0] -"InstalledPath"="$PackageFolder$\ProjectTemplates" \ No newline at end of file diff --git a/src/Components/Blazor/BlazorExtension/src/source.extension.vsixmanifest b/src/Components/Blazor/BlazorExtension/src/source.extension.vsixmanifest deleted file mode 100644 index 78244bc951..0000000000 --- a/src/Components/Blazor/BlazorExtension/src/source.extension.vsixmanifest +++ /dev/null @@ -1,25 +0,0 @@ - - - - - Blazor - Provides Visual Studio support for Blazor - Content\LICENSE.txt - Microsoft.VisualStudio.BlazorExtension - https://go.microsoft.com/fwlink/?linkid=870449 - https://go.microsoft.com/fwlink/?linkid=870448 - Content\WebConfiguration.png - Content\WebConfiguration.png - - - - - - - - - - - - - diff --git a/src/Components/Components.sln b/src/Components/Components.sln index 3c448f8604..f00b28bd36 100644 --- a/src/Components/Components.sln +++ b/src/Components/Components.sln @@ -201,8 +201,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.Mvc.Ne EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.AspNetCore.JsonPatch", "..\Features\JsonPatch\src\Microsoft.AspNetCore.JsonPatch.csproj", "{DC47C40A-FC38-44E4-94A4-ADE794E76309}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Microsoft.VisualStudio.BlazorExtension", "blazor\BlazorExtension\src\Microsoft.VisualStudio.BlazorExtension.csproj", "{9088E4E4-B855-457F-AE9E-D86709A5E1F4}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{BB236B66-28C0-49DD-9CD4-C4673CD4E7B4}" ProjectSection(SolutionItems) = preProject ..\..\.editorconfig = ..\..\.editorconfig @@ -1328,18 +1326,6 @@ Global {DC47C40A-FC38-44E4-94A4-ADE794E76309}.Release|x64.Build.0 = Release|Any CPU {DC47C40A-FC38-44E4-94A4-ADE794E76309}.Release|x86.ActiveCfg = Release|Any CPU {DC47C40A-FC38-44E4-94A4-ADE794E76309}.Release|x86.Build.0 = Release|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|Any CPU.Build.0 = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x64.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x64.Build.0 = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x86.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Debug|x86.Build.0 = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|Any CPU.Build.0 = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x64.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x64.Build.0 = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x86.ActiveCfg = Debug|Any CPU - {9088E4E4-B855-457F-AE9E-D86709A5E1F4}.Release|x86.Build.0 = Debug|Any CPU {ED210157-461B-45BB-9D86-B81A62792C30}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {ED210157-461B-45BB-9D86-B81A62792C30}.Debug|Any CPU.Build.0 = Debug|Any CPU {ED210157-461B-45BB-9D86-B81A62792C30}.Debug|x64.ActiveCfg = Debug|Any CPU @@ -1593,7 +1579,6 @@ Global {3FAF725B-A628-4531-9F61-499660CD4347} = {2FC10057-7A0A-4E34-8302-879925BC0102} {04262990-929C-42BF-85A9-21C25FA95617} = {2FC10057-7A0A-4E34-8302-879925BC0102} {DC47C40A-FC38-44E4-94A4-ADE794E76309} = {2FC10057-7A0A-4E34-8302-879925BC0102} - {9088E4E4-B855-457F-AE9E-D86709A5E1F4} = {7260DED9-22A9-4E9D-92F4-5E8A4404DEAF} {ED210157-461B-45BB-9D86-B81A62792C30} = {2FC10057-7A0A-4E34-8302-879925BC0102} {DA137BD4-F7F1-4D53-855F-5EC40CEA36B0} = {2FC10057-7A0A-4E34-8302-879925BC0102} {0CDAB70B-71DC-43BE-ACB7-AD2EE3541FFB} = {2FC10057-7A0A-4E34-8302-879925BC0102} diff --git a/src/Components/ComponentsNoDeps.slnf b/src/Components/ComponentsNoDeps.slnf index 497332bacd..f41ac99b30 100644 --- a/src/Components/ComponentsNoDeps.slnf +++ b/src/Components/ComponentsNoDeps.slnf @@ -30,7 +30,6 @@ "Components\\test\\Microsoft.AspNetCore.Components.Tests.csproj", "Server\\src\\Microsoft.AspNetCore.Components.Server.csproj", "Server\\test\\Microsoft.AspNetCore.Components.Server.Tests.csproj", - "blazor\\BlazorExtension\\src\\Microsoft.VisualStudio.BlazorExtension.csproj", "test\\E2ETest\\Microsoft.AspNetCore.Components.E2ETests.csproj", "test\\testassets\\BasicTestApp\\BasicTestApp.csproj", "test\\testassets\\ComponentsApp.App\\ComponentsApp.App.csproj",