From 61cb466a47e7847dd21eb6f266f89fa6a912c252 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 10:43:51 +0000 Subject: [PATCH 1/6] Initial plan From 17f1b52c36fb7145c40a138045a110f734fedc42 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 10:55:16 +0000 Subject: [PATCH 2/6] Remove template.json files and adjust test code Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- .../Shared/BlazorTemplateTest.cs | 113 ---- .../Shared/TestOutputLogger.cs | 31 -- .../Less/.template.config/template.json | 41 -- .../Scss/.template.config/template.json | 41 -- .../TypeScript/.template.config/template.json | 41 -- .../.template.config/template.json | 58 -- .../.template.config/template.json | 58 -- .../Protobuf/.template.config/template.json | 50 -- .../.template.config/template.json | 45 -- .../RazorPage/.template.config/template.json | 72 --- .../RazorView/.template.config/template.json | 40 -- .../.template.config/template.json | 47 -- .../ViewStart/.template.config/template.json | 42 -- .../.template.config/template.json | 510 ------------------ .../.template.config/template.json | 494 ----------------- .../.template.config/template.json | 214 -------- .../.template.config/template.json | 181 ------- .../.template.config/template.json | 158 ------ .../.template.config/template.json | 125 ----- .../.template.config/template.json | 460 ---------------- .../.template.config/template.json | 456 ---------------- .../.template.config/template.json | 186 ------- .../.template.config/template.json | 438 --------------- .../.template.config/template.json | 181 ------- .../.template.config/template.json | 165 ------ .../.template.config/template.json | 121 ----- .../.template.config/template.json | 92 ---- .../BlazorWasmTemplateAuthTest.cs | 69 ++- .../BlazorWasmTemplateTest.cs | 65 ++- 29 files changed, 128 insertions(+), 4466 deletions(-) delete mode 100644 src/ProjectTemplates/Shared/BlazorTemplateTest.cs delete mode 100644 src/ProjectTemplates/Shared/TestOutputLogger.cs delete mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json delete mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json diff --git a/src/ProjectTemplates/Shared/BlazorTemplateTest.cs b/src/ProjectTemplates/Shared/BlazorTemplateTest.cs deleted file mode 100644 index 5676a43ed1d8..000000000000 --- a/src/ProjectTemplates/Shared/BlazorTemplateTest.cs +++ /dev/null @@ -1,113 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System; -using System.Diagnostics; -using System.IO; -using System.Reflection; -using System.Runtime.InteropServices; -using System.Threading.Tasks; -using Microsoft.AspNetCore.InternalTesting; -using Microsoft.Extensions.Configuration; -using Microsoft.Extensions.Logging; -using Microsoft.Extensions.Logging.Testing; -using Templates.Test.Helpers; -using Xunit; -using Xunit.Abstractions; - -namespace Templates.Blazor.Test; - -public abstract class BlazorTemplateTest : LoggedTest -{ - public BlazorTemplateTest(ProjectFactoryFixture projectFactory) - { - ProjectFactory = projectFactory; - } - - public ProjectFactoryFixture ProjectFactory { get; set; } - - private ITestOutputHelper _output; - public ITestOutputHelper Output - { - get - { - if (_output == null) - { - _output = new TestOutputLogger(Logger); - } - return _output; - } - } - - public abstract string ProjectType { get; } - - protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null, bool serverProject = false, bool onlyCreate = false) - { - // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 - Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); - - var project = await ProjectFactory.CreateProject(Output); - if (targetFramework != null) - { - project.TargetFramework = targetFramework; - } - - await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); - - if (serverProject || auth is null) - { - // External auth mechanisms (which is any auth at all for Blazor WASM) require https to work and thus don't honor the --no-https flag - var requiresHttps = string.Equals(auth, "IndividualB2C", StringComparison.OrdinalIgnoreCase) - || string.Equals(auth, "SingleOrg", StringComparison.OrdinalIgnoreCase) - || (!serverProject && auth is not null); - var noHttps = args?.Contains(ArgConstants.NoHttps) ?? false; - var expectedLaunchProfileNames = requiresHttps - ? new[] { "https" } - : noHttps - ? new[] { "http" } - : new[] { "http", "https" }; - await project.VerifyLaunchSettings(expectedLaunchProfileNames); - } - - if (!onlyCreate) - { - var targetProject = project; - if (serverProject) - { - targetProject = GetSubProject(project, "Server", $"{project.ProjectName}.Server"); - } - - await targetProject.RunDotNetPublishAsync(noRestore: false); - } - - return project; - } - - protected static Project GetSubProject(Project project, string projectDirectory, string projectName) - { - var subProjectDirectory = Path.Combine(project.TemplateOutputDir, projectDirectory); - if (!Directory.Exists(subProjectDirectory)) - { - throw new DirectoryNotFoundException($"Directory {subProjectDirectory} was not found."); - } - - var subProject = new Project - { - Output = project.Output, - DiagnosticsMessageSink = project.DiagnosticsMessageSink, - ProjectName = projectName, - TemplateOutputDir = subProjectDirectory, - }; - - return subProject; - } - - protected static string ReadFile(string basePath, string path) - { - var fullPath = Path.Combine(basePath, path); - var doesExist = File.Exists(fullPath); - - Assert.True(doesExist, $"Expected file to exist, but it doesn't: {path}"); - return File.ReadAllText(Path.Combine(basePath, path)); - } -} diff --git a/src/ProjectTemplates/Shared/TestOutputLogger.cs b/src/ProjectTemplates/Shared/TestOutputLogger.cs deleted file mode 100644 index 064906be586e..000000000000 --- a/src/ProjectTemplates/Shared/TestOutputLogger.cs +++ /dev/null @@ -1,31 +0,0 @@ -// Licensed to the .NET Foundation under one or more agreements. -// The .NET Foundation licenses this file to you under the MIT license. - -using System.Globalization; -using Microsoft.Extensions.Logging; -using Xunit.Abstractions; - -namespace Templates.Test.Helpers; - -internal sealed class TestOutputLogger : ITestOutputHelper -{ - private readonly ILogger _logger; - - public TestOutputLogger(ILogger logger) - { - _logger = logger; - } - - public void WriteLine(string message) - { - _logger.LogInformation(message); - } - - public void WriteLine(string format, params object[] args) - { - if (_logger.IsEnabled(LogLevel.Information)) - { - _logger.LogInformation(string.Format(CultureInfo.InvariantCulture, format, args)); - } - } -} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json deleted file mode 100644 index 9f38172c4503..000000000000 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "Style" ], - "name": "LESS Style Sheet", - "generatorVersions": "[1.0.0.0-*)", - "description": "LESS is a language that compiles into CSS", - "groupIdentity": "Microsoft.DotNet.Web.ClientItems.Less", - "precedence": "10000", - "identity": "Microsoft.DotNet.Web.ClientItems.Less.10.0", - "shortName": "less", - "sourceName": "styleSheet1", - "tags": { - "type": "item" - }, - "primaryOutputs": [ - { - "path": "styleSheet1.less" - } - ], - "defaultName": "styleSheet1", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens styleSheet1.less in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json deleted file mode 100644 index 8e3400fd9ffc..000000000000 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "Style" ], - "name": "SCSS Style Sheet (SASS)", - "generatorVersions": "[1.0.0.0-*)", - "description": "SCSS is a language that compiles into CSS", - "groupIdentity": "Microsoft.DotNet.Web.ClientItems.Scss", - "precedence": "10000", - "identity": "Microsoft.DotNet.Web.ClientItems.Scss.10.0", - "shortName": "scss", - "sourceName": "styleSheet1", - "tags": { - "type": "item" - }, - "primaryOutputs": [ - { - "path": "styleSheet1.scss" - } - ], - "defaultName": "styleSheet1", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens styleSheet1.scss in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json deleted file mode 100644 index 7a340a53b7a3..000000000000 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "Script" ], - "name": "TypeScript file", - "generatorVersions": "[1.0.0.0-*)", - "description": "A blank TypeScript source file", - "groupIdentity": "Microsoft.DotNet.Web.ClientItems.TypeScript", - "precedence": "10000", - "identity": "Microsoft.DotNet.Web.ClientItems.TypeScript.10.0", - "shortName": "tsfile", - "sourceName": "file1", - "tags": { - "type": "item" - }, - "primaryOutputs": [ - { - "path": "file1.ts" - } - ], - "defaultName": "file1", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens file1.ts in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json deleted file mode 100644 index a5b8aef8d3da..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "API Controller", - "generatorVersions": "[1.0.0.0-*)", - "description": "API Controller with or without read/write actions", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.ApiController", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.ApiController.10.0", - "shortName": "apicontroller", - "sourceName": "ValueController", - "primaryOutputs": [ - { - "path": "ValueController.cs" - } - ], - "defaultName": "ValueController", - "symbols": { - "namespace": { - "description": "Namespace for the generated code", - "replaces": "MyApp.Namespace", - "type": "parameter" - }, - "actions": { - "description": "Create controller with read/write actions", - "displayName": "Add Read/Write Actions", - "type": "parameter", - "datatype": "bool", - "defaultValue": "false" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "NameIsController": { - "type": "computed", - "value": "(name == \"ControllerBase\")" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens the created controller in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json deleted file mode 100644 index 4a03a91f4897..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json +++ /dev/null @@ -1,58 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "MVC Controller", - "generatorVersions": "[1.0.0.0-*)", - "description": "MVC Controller with or without read/write actions", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.MvcController", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.MvcController.10.0", - "shortName": "mvccontroller", - "sourceName": "HomeController", - "primaryOutputs": [ - { - "path": "HomeController.cs" - } - ], - "defaultName": "HomeController", - "symbols": { - "namespace": { - "description": "Namespace for the generated code", - "replaces": "MyApp.Namespace", - "type": "parameter" - }, - "actions": { - "description": "Create controller with read/write actions", - "displayName": "Add Read/Write Actions", - "type": "parameter", - "datatype": "bool", - "defaultValue": "false" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "NameIsController": { - "type": "computed", - "value": "(name == \"Controller\")" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens the created controller in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json deleted file mode 100644 index b4c2db526398..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json +++ /dev/null @@ -1,50 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "gRPC" - ], - "name": "Protocol Buffer File", - "generatorVersions": "[1.0.0.0-*)", - "description": "A protocol buffer file for describing messages and services for gRPC.", - "tags": { - "language": "", - "type": "item" - }, - "groupIdentity": "Microsoft.Web.Grpc.Protobuf", - "precedence": "10000", - "identity": "Microsoft.Web.Grpc.Protobuf.10.0", - "shortname": "proto", - "sourceName": "protobuf", - "primaryOutputs": [ - { - "path": "protobuf.proto" - } - ], - "defaultName": "protobuf", - "symbols": { - "namespace": { - "description": "namespace for the generated code", - "replaces": "MyApp.Namespace", - "type": "parameter" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens protobuf.proto in the editor", - "manualInstructions": [], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json deleted file mode 100644 index 37e89b7c41f7..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json +++ /dev/null @@ -1,45 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "ASP.NET" - ], - "name": "Razor Component", - "generatorVersions": "[1.0.0.0-*)", - "description": "A reusable UI component implemented with Razor", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Components.RazorComponent", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Components.RazorComponent.10.0", - "shortname": "razorcomponent", - "sourceName": "Component1", - "primaryOutputs": [ - { - "path": "Component1.razor" - } - ], - "defaultName": "Component1", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens Component1.razor in the editor", - "manualInstructions": [], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json deleted file mode 100644 index e3d340cee888..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json +++ /dev/null @@ -1,72 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "Razor Page", - "generatorVersions": "[1.0.0.0-*)", - "description": "A Razor page with or without a page model", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.RazorPage", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.RazorPage.10.0", - "shortName": "page", - "sourceName": "Index", - "primaryOutputs": [ - { "path": "Index.cshtml" }, - { - "path": "Index.cshtml.cs", - "condition": "(!no-pagemodel)" - } - ], - "defaultName": "Index", - "sources": [ - { - "modifiers": [ - { - "condition": "(no-pagemodel)", - "exclude": [ - "Index.cshtml.cs" - ] - } - ] - } - ], - "symbols": { - "namespace": { - "description": "namespace for the generated code", - "replaces": "MyApp.Namespace", - "type": "parameter" - }, - "no-pagemodel": { - "description": "create page without a PageModel", - "displayName": "Exclude PageModel", - "type": "parameter", - "datatype": "bool", - "defaultValue": "false" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "NameIsPage": { - "type": "computed", - "value": "(name == \"Page\")" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens Index.cshtml in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json deleted file mode 100644 index 8d05235d6994..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json +++ /dev/null @@ -1,40 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "Razor View", - "generatorVersions": "[1.0.0.0-*)", - "description": "An empty Razor View", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.RazorView", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.RazorView.10.0", - "shortName": "view", - "sourceName": "Index", - "primaryOutputs": [ - { "path": "Index.cshtml" } - ], - "defaultName": "Index", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens the created view in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json deleted file mode 100644 index 454f475a3a0c..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json +++ /dev/null @@ -1,47 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "MVC ViewImports", - "generatorVersions": "[1.0.0.0-*)", - "description": "An MVC View Import Page", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.ViewImports", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.ViewImports.10.0", - "shortName": "viewimports", - "sourceName": "ignoreme", - "primaryOutputs": [ - { - "path": "_ViewImports.cshtml" - } - ], - "defaultName": "_ViewImports", - "symbols": { - "namespace": { - "description": "namespace for the generated code", - "replaces": "MyApp.Namespace", - "type": "parameter" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens _ViewImports.cshtml in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json deleted file mode 100644 index 3c8a010849e3..000000000000 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ "Web", "ASP.NET" ], - "name": "MVC ViewStart", - "generatorVersions": "[1.0.0.0-*)", - "description": "An MVC ViewStart Page", - "tags": { - "language": "C#", - "type": "item" - }, - "groupIdentity": "Microsoft.AspNetCore.Mvc.ViewStart", - "precedence": "10000", - "identity": "Microsoft.AspNetCore.Mvc.ViewStart.10.0", - "shortName": "viewstart", - "sourceName": "ignoreme", - "primaryOutputs": [ - { - "path": "_ViewStart.cshtml" - } - ], - "defaultName": "_ViewStart", - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - } - }, - "postActions": [ - { - "id": "openInEditor", - "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens _ViewStart.cshtml in the editor", - "manualInstructions": [ ], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json deleted file mode 100644 index df16332f7827..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json +++ /dev/null @@ -1,510 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Blazor", - "WebAssembly" - ], - "name": "Blazor Web App", - "defaultName": "BlazorApp", - "description": "A project template for creating a Blazor web app that supports both server-side rendering and client interactivity. This template can be used for web apps with rich dynamic user interfaces (UIs).", - "groupIdentity": "Microsoft.Web.Blazor", - "precedence": "10000", - "guids": [ - "4C26868E-5E7C-458D-82E3-040509D0C71F", - "5990939C-7E7B-4CFA-86FF-44CA5756498A", - "650B3CE7-2E93-4CC4-9F46-466686815EAA", - "53bc9b9d-9d6a-45d4-8429-2a2761773502" - ], - "identity": "Microsoft.Web.Blazor.CSharp.10.0", - "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", - "preferNameDirectory": true, - "primaryOutputs": [ - { - "condition": "(UseWebAssembly && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))", - "path": "BlazorWebCSharp.1.sln" - }, - { - "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "BlazorWebCSharp.1/BlazorWebCSharp.1.csproj" - }, - { - "condition": "(!UseWebAssembly)", - "path": "BlazorWebCSharp.1.csproj" - }, - { - "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "BlazorWebCSharp.1.Client/BlazorWebCSharp.1.Client.csproj" - } - ], - "shortName": "blazor", - "sourceName": "BlazorWebCSharp.1", - "sources": [ - { - "source": "./", - "target": "./", - "exclude": [ - ".template.config/**" - ], - "copyOnly": [ - "**/wwwroot/bootstrap/**" - ], - "modifiers": [ - { - "condition": "(!UseWebAssembly)", - "exclude": [ - "BlazorWebCSharp.1.Client/**", - "*.sln" - ], - "rename": { - "BlazorWebCSharp.1/": "./" - } - }, - { - "condition": "(UseWebAssembly && InteractiveAtRoot)", - "rename": { - "BlazorWebCSharp.1/Components/Layout/": "./BlazorWebCSharp.1.Client/Layout/", - "BlazorWebCSharp.1/Components/Pages/Home.razor": "./BlazorWebCSharp.1.Client/Pages/Home.razor", - "BlazorWebCSharp.1/Components/Pages/NotFound.razor": "./BlazorWebCSharp.1.Client/Pages/NotFound.razor", - "BlazorWebCSharp.1/Components/Pages/Weather.razor": "./BlazorWebCSharp.1.Client/Pages/Weather.razor", - "BlazorWebCSharp.1/Components/Routes.razor": "./BlazorWebCSharp.1.Client/Routes.razor" - } - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "BlazorWebCSharp.1/Program.Main.cs", - "BlazorWebCSharp.1.Client/Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "BlazorWebCSharp.1/Program.cs", - "BlazorWebCSharp.1.Client/Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - }, - { - "condition": "(!(UseServer && !UseWebAssembly))", - "exclude": [ - "BlazorWebCSharp.1/Components/Pages/Counter.razor" - ] - }, - { - "condition": "(!UseServer)", - "exclude": [ - "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor", - "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor.css", - "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor.js", - "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor", - "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor.css", - "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor.js" - ] - }, - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "BlazorWebCSharp.1/Properties/launchSettings.json" - ] - }, - { - "condition": "(!SampleContent)", - "exclude": [ - "BlazorWebCSharp.1/Components/Pages/Auth.*", - "BlazorWebCSharp.1/Components/Pages/Counter.*", - "BlazorWebCSharp.1/Components/Pages/Weather.*", - "BlazorWebCSharp.1/Components/Layout/NavMenu.*", - "BlazorWebCSharp.1/wwwroot/lib/**", - "BlazorWebCSharp.1/wwwroot/favicon.*", - "BlazorWebCSharp.1.Client/Pages/**", - "BlazorWebCSharp.1.Client/wwwroot/**" - ] - }, - { - "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "exclude": [ - "*.sln" - ] - }, - { - "condition": "(!IndividualLocalAuth)", - "exclude": [ - "BlazorWebCSharp.1/Components/Account/**", - "BlazorWebCSharp.1/Data/**", - "BlazorWebCSharp.1.Client/UserInfo.cs", - "BlazorWebCSharp.1.Client/Pages/Auth.razor" - ] - }, - { - "condition": "(!(IndividualLocalAuth && !UseLocalDB))", - "exclude": [ - "BlazorWebCSharp.1/Data/app.db" - ] - }, - { - "condition": "(!(IndividualLocalAuth && !UseWebAssembly))", - "exclude": [ - "BlazorWebCSharp.1/Components/Pages/Auth.razor" - ] - }, - { - "condition": "(!(IndividualLocalAuth && UseServer))", - "exclude": [ - "BlazorWebCSharp.1/Components/Account/IdentityRevalidatingAuthenticationStateProvider.cs" - ] - }, - { - "condition": "(IndividualLocalAuth && UseLocalDB && UseWebAssembly)", - "rename": { - "BlazorWebCSharp.1/Data/SqlServer/": "BlazorWebCSharp.1/Data/Migrations/" - }, - "exclude": [ - "BlazorWebCSharp.1/Data/SqlLite/**" - ] - }, - { - "condition": "(IndividualLocalAuth && UseLocalDB && !UseWebAssembly)", - "rename": { - "BlazorWebCSharp.1/Data/SqlServer/": "Data/Migrations/" - }, - "exclude": [ - "BlazorWebCSharp.1/Data/SqlLite/**" - ] - }, - { - "condition": "(IndividualLocalAuth && !UseLocalDB && UseWebAssembly)", - "rename": { - "BlazorWebCSharp.1/Data/SqlLite/": "BlazorWebCSharp.1/Data/Migrations/" - }, - "exclude": [ - "BlazorWebCSharp.1/Data/SqlServer/**" - ] - }, - { - "condition": "(IndividualLocalAuth && !UseLocalDB && !UseWebAssembly)", - "rename": { - "BlazorWebCSharp.1/Data/SqlLite/": "Data/Migrations/" - }, - "exclude": [ - "BlazorWebCSharp.1/Data/SqlServer/**" - ] - }, - { - "condition": "(IndividualLocalAuth && UseWebAssembly)", - "rename": { - "BlazorWebCSharp.1/Components/Account/Shared/RedirectToLogin.razor": "BlazorWebCSharp.1.Client/RedirectToLogin.razor" - } - } - ] - } - ], - "symbols": { - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "UserSecretsId": { - "type": "parameter", - "datatype": "string", - "replaces": "aspnet-BlazorWebCSharp.1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "defaultValue": "aspnet-BlazorWebCSharp.1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "description": "The ID to use for secrets (use with Individual auth)." - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5500" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if Individual auth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5501" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if Individual auth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "StyleBundleName":{ - "type": "generated", - "generator": "regex", - "replaces": "StyleBundleName", - "parameters": { - "source": "name", - "steps": [ - { - "regex": " ", - "replacement": "_" - }] - } - }, - "InteractivityPlatform": { - "type": "parameter", - "datatype": "choice", - "defaultValue": "Server", - "displayName": "_Interactive render mode", - "description": "Chooses which interactive render mode to use for interactive components", - "choices": [ - { - "choice": "None", - "displayName": "None", - "description": "No interactivity (static server rendering only)" - }, - { - "choice": "Server", - "displayName": "Server", - "description": "Runs on the server" - }, - { - "choice": "WebAssembly", - "displayName": "WebAssembly", - "description": "Runs in the browser using WebAssembly" - }, - { - "choice": "Auto", - "displayName": "Auto (Server and WebAssembly)", - "description": "Uses Server while downloading WebAssembly assets, then uses WebAssembly" - } - ] - }, - "InteractivityLocation": { - "type": "parameter", - "datatype": "choice", - "defaultValue": "InteractivePerPage", - "displayName": "Interactivity _location", - "description": "Chooses which components will have interactive rendering enabled", - "isEnabled": "(InteractivityPlatform != \"None\")", - "choices": [ - { - "choice": "InteractivePerPage", - "displayName": "Per page/component", - "description": "Interactivity is applied on a per-page or per-component basis" - }, - { - "choice": "InteractiveGlobal", - "displayName": "Global", - "description": "Interactivity is applied at the root level" - } - ] - }, - "UseWebAssembly": { - "type": "computed", - "value": "(InteractivityPlatform == \"WebAssembly\" || InteractivityPlatform == \"Auto\")" - }, - "UseServer": { - "type": "computed", - "value": "(InteractivityPlatform == \"Server\" || InteractivityPlatform == \"Auto\")" - }, - "IncludeSampleContent": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "true", - "displayName": "Include _sample pages", - "description": "Configures whether to add sample pages and styling to demonstrate basic usage patterns." - }, - "Empty": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Configures whether to omit sample pages and styling that demonstrate basic usage patterns." - }, - "auth": { - "type": "parameter", - "datatype": "choice", - "choices": [ - { - "choice": "None", - "description": "No authentication" - }, - { - "choice": "Individual", - "description": "Individual authentication" - } - ], - "defaultValue": "None", - "description": "The type of authentication to use" - }, - "UseLocalDB": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual is specified." - }, - "SampleContent": { - "type": "computed", - "value": "(((IncludeSampleContent && (HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\"))) || ((!Empty && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))))" - }, - "AllInteractive": { - "type": "parameter", - "datatype": "bool", - "isEnabled": "(InteractivityPlatform != \"None\")", - "defaultValue": "false", - "displayName": "_Enable interactive rendering globally throughout the site", - "description": "Configures whether to make every page interactive by applying an interactive render mode at the top level. If false, pages will use static server rendering by default, and can be marked interactive on a per-page or per-component basis." - }, - "InteractiveAtRoot": { - "type": "computed", - "value": "(InteractivityLocation == \"InteractiveGlobal\" || AllInteractive)" - }, - "IndividualLocalAuth": { - "type": "computed", - "value": "(auth == \"Individual\")" - }, - "RequiresHttps": { - "type": "computed", - "value": "(OrganizationalAuth || IndividualLocalAuth)" - }, - "HasHttpProfile": { - "type": "computed", - "value": "(!RequiresHttps)" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(RequiresHttps || !NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if Individual isn't used for --auth." - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "LocalhostTld": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Use the .dev.localhost TLD in the application URL", - "description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345." - } - }, - "tags": { - "language": "C#", - "type": "project" - }, - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json deleted file mode 100644 index 66cdb208eee5..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json +++ /dev/null @@ -1,494 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Blazor", - "WebAssembly", - "PWA" - ], - "name": "Blazor WebAssembly Standalone App", - "defaultName": "BlazorApp", - "description": "A project template for creating a Blazor app that runs on WebAssembly. This template can be used for web apps with rich dynamic user interfaces (UIs).", - "groupIdentity": "Microsoft.Web.Blazor.Wasm", - "precedence": "10000", - "guids": [ - "4C26868E-5E7C-458D-82E3-040509D0C71F", - "5990939C-7E7B-4CFA-86FF-44CA5756498A", - "650B3CE7-2E93-4CC4-9F46-466686815EAA", - "0AFFA7FD-4E37-4636-AB91-3753E746DB98", - "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID - ], - "identity": "Microsoft.Web.Blazor.Wasm.CSharp.10.0", - "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", - "preferNameDirectory": true, - "primaryOutputs": [ - { - "path": "ComponentsWebAssembly-CSharp.csproj" - } - ], - "shortName": "blazorwasm", - "sourceName": "ComponentsWebAssembly-CSharp", - "sources": [ - { - "source": "./", - "target": "./", - "exclude": [ - ".template.config/**" - ], - "copyOnly": [ - "**/wwwroot/bootstrap/**" - ], - "modifiers": [ - { - "condition": "(!PWA)", - "exclude": [ - "wwwroot/service-worker*.js", - "wwwroot/manifest.webmanifest", - "wwwroot/icon-512.png" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - }, - { - "condition": "(!IndividualLocalAuth)", - "exclude": [ - "wwwroot/appsettings.Development.json" - ] - }, - { - "condition": "(NoAuth)", - "rename": { - "Layout/MainLayout.NoAuth.razor": "Layout/MainLayout.razor" - }, - "exclude": [ - "Pages/Authentication.razor", - "Layout/LoginDisplay.razor", - "Layout/MainLayout.Auth.razor", - "Layout/RedirectToLogin.razor", - "wwwroot/appsettings.Development.json", - "wwwroot/appsettings.json" - ] - }, - { - "condition": "(!NoAuth)", - "rename": { - "Layout/MainLayout.Auth.razor": "Layout/MainLayout.razor" - }, - "exclude": [ - "Layout/MainLayout.NoAuth.razor" - ] - }, - { - "condition": "(!GenerateApi)", - "rename": { - "Layout/NavMenu.NoApi.razor": "Layout/NavMenu.razor" - }, - "exclude": [ - "Pages/CallWebApi.razor", - "Layout/NavMenu.CallsWebApi.razor" - ] - }, - { - "condition": "(GenerateApi)", - "rename": { - "Layout/NavMenu.CallsWebApi.razor": "Layout/NavMenu.razor" - }, - "exclude": [ - "Layout/NavMenu.NoApi.razor" - ] - }, - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!SampleContent)", - "exclude": [ - "Pages/Counter.*", - "Pages/Weather.*", - "Layout/MainLayout.razor.css", - "Layout/NavMenu.*", - "wwwroot/lib/**", - "wwwroot/favicon.png", - "wwwroot/sample-data/weather.json" - ] - } - ] - } - ], - "symbols": { - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "auth": { - "type": "parameter", - "datatype": "choice", - "choices": [ - { - "choice": "None", - "description": "No authentication" - }, - { - "choice": "Individual", - "description": "Individual authentication" - }, - { - "choice": "IndividualB2C", - "description": "Individual authentication with Azure AD B2C" - }, - { - "choice": "SingleOrg", - "description": "Organizational authentication for a single tenant" - } - ], - "defaultValue": "None", - "description": "The type of authentication to use" - }, - "Authority": { - "type": "parameter", - "datatype": "string", - "replaces": "https://login.microsoftonline.com/", - "description": "The authority of the OIDC provider (use with standalone Individual auth)." - }, - "MissingAuthority": { - "type": "computed", - "value": "(IndividualAuth && Authority == \"https://login.microsoftonline.com/\" && ClientId == \"33333333-3333-3333-33333333333333333\")" - }, - "AAdB2CInstance": { - "type": "parameter", - "datatype": "string", - "replaces": "https:////aadB2CInstance.b2clogin.com/", - "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." - }, - "SignUpSignInPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_susi", - "replaces": "MySignUpSignInPolicyId", - "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." - }, - "AADInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/", - "replaces": "https:////login.microsoftonline.com/", - "description": "The Azure Active Directory instance to connect to (use with SingleOrg auth)." - }, - "ClientId": { - "type": "parameter", - "datatype": "string", - "replaces": "33333333-3333-3333-33333333333333333", - "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or Individual auth in standalone scenarios)." - }, - "Domain": { - "type": "parameter", - "datatype": "string", - "replaces": "qualified.domain.name", - "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." - }, - "AppIDUri": { - "type": "parameter", - "datatype": "string", - "replaces": "api.id.uri", - "description": "The App ID Uri for the server API we want to call (use with SingleOrg or IndividualB2C auth)." - }, - "APIClientId": { - "type": "parameter", - "datatype": "string", - "replaces": "11111111-1111-1111-11111111111111111", - "description": "The Client ID for the API that the server hosts (use with IndividualB2C, SingleOrg)." - }, - "DefaultScope": { - "type": "parameter", - "datatype": "string", - "replaces": "api-scope", - "defaultValue": "access_as_user", - "description": "The API scope the client needs to request to provision an access token. (use with IndividualB2C, SingleOrg)." - }, - "TenantId": { - "type": "parameter", - "datatype": "string", - "replaces": "22222222-2222-2222-2222-222222222222", - "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." - }, - "OrgReadAccess": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg)." - }, - "UserSecretsId": { - "type": "parameter", - "datatype": "string", - "replaces": "aspnet-BlazorServerWeb-CSharp-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "defaultValue": "aspnet-BlazorServerWeb-CSharp-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "PWA": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "_Progressive Web Application", - "description": "If specified, produces a Progressive Web Application (PWA) supporting installation and offline use." - }, - "OrganizationalAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" - }, - "MultiOrgAuth": { - "type": "computed", - "value": "(auth == \"MultiOrg\")" - }, - "SingleOrgAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\")" - }, - "IndividualLocalAuth": { - "type": "computed", - "value": "(auth == \"Individual\")" - }, - "IndividualAuth": { - "type": "computed", - "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" - }, - "IndividualB2CAuth": { - "type": "computed", - "value": "(auth == \"IndividualB2C\")" - }, - "IncludeSampleContent": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "true", - "displayName": "_Include sample pages", - "description": "Configures whether to add sample pages and styling to demonstrate basic usage patterns." - }, - "Empty": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Configures whether to omit sample pages and styling that demonstrate basic usage patterns." - }, - "SampleContent": { - "type": "computed", - "value": "(((IncludeSampleContent && (HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\"))) || ((!Empty && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))))" - }, - "NoAuth": { - "type": "computed", - "value": "(!(IndividualAuth || OrganizationalAuth))" - }, - "RequiresHttps": { - "type": "computed", - "value": "(OrganizationalAuth || IndividualAuth)" - }, - "HasHttpProfile": { - "type": "computed", - "value": "(!RequiresHttps)" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(RequiresHttps || !NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - }, - "UseLocalDB": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "CalledApiUrl": { - "type": "parameter", - "datatype": "string", - "replaces": "[WebApiUrl]", - "defaultValue": "https://graph.microsoft.com/v1.0", - "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C without and ASP.NET Core host is specified." - }, - "CalledApiScopes": { - "type": "parameter", - "datatype": "string", - "replaces": "user.read", - "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C without and ASP.NET Core host is specified." - }, - "GenerateApi": { - "type": "computed", - "value": "(IndividualB2CAuth && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - } - }, - "tags": { - "language": "C#", - "type": "project" - }, - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "args": { - "files": ["ComponentsWebAssembly-CSharp.csproj"] - }, - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - }, - { - "id": "open-file", - "condition": "(IndividualLocalAuth && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens Readme.txt in the editor", - "manualInstructions": [], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "0" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json deleted file mode 100644 index b2249e8d99bc..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json +++ /dev/null @@ -1,214 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Empty" - ], - "name": "ASP.NET Core Empty", - "generatorVersions": "[1.0.0.0-*)", - "description": "An empty project template for creating an ASP.NET Core application. This template does not have any content in it.", - "groupIdentity": "Microsoft.Web.Empty", - "precedence": "10000", - "identity": "Microsoft.Web.Empty.CSharp.10.0", - "shortName": "web", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" - ], - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(!NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "LocalhostTld": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Use the .dev.localhost TLD in the application URL", - "description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.csproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json deleted file mode 100644 index a8d459dbfa34..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json +++ /dev/null @@ -1,181 +0,0 @@ -{ - "author": "Microsoft", - "classifications": [ - "Web", - "Empty" - ], - "name": "ASP.NET Core Empty", - "generatorVersions": "[1.0.0.0-*)", - "description": "An empty project template for creating an ASP.NET Core application. This template does not have any content in it.", - "groupIdentity": "Microsoft.Web.Empty", - "precedence": "10000", - "identity": "Microsoft.Web.Empty.FSharp.10.0", - "shortName": "web", - "tags": { - "language": "F#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(!NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.fsproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json deleted file mode 100644 index 44d84749a755..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json +++ /dev/null @@ -1,158 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "gRPC", - "API", - "Service" - ], - "name": "ASP.NET Core gRPC Service", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating a gRPC service using ASP.NET Core, with optional support for publishing as native AOT.", - "groupIdentity": "Microsoft.Web.Grpc", - "precedence": "10000", - "identity": "Microsoft.Grpc.Service.CSharp.10.0", - "shortName": "grpc", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "GrpcService-CSharp", - "preferNameDirectory": true, - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "defaultValue": "net10.0" - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "NativeAot" : { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Enable _native AOT publish", - "description": "Whether to enable the project for publishing as native AOT." - } - }, - "primaryOutputs": [ - { - "path": "GrpcService-CSharp.csproj" - } - ], - "defaultName": "GrpcService", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json deleted file mode 100644 index 5200f94c468c..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json +++ /dev/null @@ -1,125 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Razor", - "Library" - ], - "name": "Razor Class Library", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project for creating a Razor class library that targets .NET", - "groupIdentity": "Microsoft.Web.Razor", - "precedence": "10000", - "identity": "Microsoft.Web.Razor.Library.CSharp.10.0", - "shortName": "razorclasslib", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.RazorClassLibrary1", - "preferNameDirectory": true, - "sources": [ - { - "modifiers": [ - { - "condition": "(!SupportPagesAndViews)", - "exclude": [ - "Areas/**" - ] - }, - { - "condition": "(SupportPagesAndViews)", - "exclude": [ - "_Imports.razor", - "Component1.razor", - "Component1.razor.css", - "ExampleJsInterop.cs", - "wwwroot/**" - ] - } - ] - } - ], - "symbols": { - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "defaultValue": "net10.0" - }, - "HostIdentifier": { - "type": "bind", - "binding": "HostIdentifier" - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "SupportPagesAndViews": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Support pages and views", - "description": "Whether to support adding traditional Razor pages and Views to this library." - } - }, - "primaryOutputs": [ - { - "path": "Company.RazorClassLibrary1.csproj" - }, - { - "condition": "(SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "Areas/MyFeature/Pages/Page1.cshtml" - }, - { - "condition": "(!SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "path": "Component1.razor" - } - ], - "defaultName": "RazorClassLibrary", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - }, - { - "id": "openPageInEditor", - "condition": "(SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens Areas/MyFeature/Pages/Page1.cshtml in the editor", - "manualInstructions": [], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "1" - }, - "continueOnError": true - }, - { - "id": "openComponentInEditor", - "condition": "(!SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", - "description": "Opens Component1.razor in the editor", - "manualInstructions": [], - "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", - "args": { - "files": "1" - }, - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json deleted file mode 100644 index 6e9ffc26ce22..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json +++ /dev/null @@ -1,460 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "MVC", - "Razor Pages" - ], - "name": "ASP.NET Core Web App (Razor Pages)", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core Razor Pages content", - "groupIdentity": "Microsoft.Web.RazorPages", - "precedence": "10000", - "identity": "Microsoft.Web.RazorPages.CSharp.10.0", - "shortName": [ - "webapp", - "razor" - ], - "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID - ], - "sources": [ - { - "copyOnly": [ - "wwwroot/**" - ], - "modifiers": [ - { - "condition": "(!OrganizationalAuth && !IndividualAuth)", - "exclude": [ - "Pages/Shared/_LoginPartial.Identity.cshtml", - "Pages/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, - { - "condition": "(OrganizationalAuth || IndividualB2CAuth)", - "rename": { - "Pages/Shared/_LoginPartial.OrgAuth.cshtml": "Pages/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Pages/Shared/_LoginPartial.Identity.cshtml" - ] - }, - { - "condition": "(IndividualLocalAuth)", - "rename": { - "Pages/Shared/_LoginPartial.Identity.cshtml": "Pages/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Pages/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, - { - "condition": "(!IndividualLocalAuth || UseLocalDB)", - "exclude": [ - "app.db" - ] - }, - { - "condition": "(!IndividualLocalAuth)", - "exclude": [ - "Data/**", - "Areas/**" - ] - }, - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(IndividualLocalAuth && UseLocalDB)", - "rename": { - "Data/SqlServer/": "Data/Migrations/" - }, - "exclude": [ - "Data/SqlLite/**" - ] - }, - { - "condition": "(IndividualLocalAuth && !UseLocalDB)", - "rename": { - "Data/SqlLite/": "Data/Migrations/" - }, - "exclude": [ - "Data/SqlServer/**" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "auth": { - "type": "parameter", - "datatype": "choice", - "choices": [ - { - "choice": "None", - "description": "No authentication" - }, - { - "choice": "Individual", - "description": "Individual authentication" - }, - { - "choice": "IndividualB2C", - "description": "Individual authentication with Azure AD B2C" - }, - { - "choice": "SingleOrg", - "description": "Organizational authentication for a single tenant" - }, - { - "choice": "MultiOrg", - "description": "Organizational authentication for multiple tenants" - }, - { - "choice": "Windows", - "description": "Windows authentication" - } - ], - "defaultValue": "None", - "description": "The type of authentication to use" - }, - "AAdB2CInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/tfp/", - "replaces": "https:////login.microsoftonline.com/tfp/", - "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." - }, - "SignUpSignInPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_susi", - "replaces": "MySignUpSignInPolicyId", - "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." - }, - "SignedOutCallbackPath": { - "type": "parameter", - "datatype": "string", - "defaultValue": "/signout/B2C_1_susi", - "replaces": "/signout/MySignUpSignInPolicyId", - "description": "The global signout callback (use with IndividualB2C auth)." - }, - "ResetPasswordPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_reset", - "replaces": "MyResetPasswordPolicyId", - "description": "The reset password policy ID for this project (use with IndividualB2C auth)." - }, - "EditProfilePolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_edit_profile", - "replaces": "MyEditProfilePolicyId", - "description": "The edit profile policy ID for this project (use with IndividualB2C auth)." - }, - "AADInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/", - "replaces": "https:////login.microsoftonline.com/", - "description": "The Azure Active Directory instance to connect to (use with SingleOrg or MultiOrg auth)." - }, - "ClientId": { - "type": "parameter", - "datatype": "string", - "replaces": "11111111-1111-1111-11111111111111111", - "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or MultiOrg auth)." - }, - "Domain": { - "type": "parameter", - "datatype": "string", - "replaces": "qualified.domain.name", - "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." - }, - "TenantId": { - "type": "parameter", - "datatype": "string", - "replaces": "22222222-2222-2222-2222-222222222222", - "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." - }, - "CallbackPath": { - "type": "parameter", - "datatype": "string", - "replaces": "/signin-oidc", - "defaultValue": "/signin-oidc", - "description": "The request path within the application's base path of the redirect URI (use with SingleOrg or IndividualB2C auth)." - }, - "OrgReadAccess": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg or MultiOrg auth)." - }, - "UserSecretsId": { - "type": "parameter", - "datatype": "string", - "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json in the generated template." - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "OrganizationalAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" - }, - "WindowsAuth": { - "type": "computed", - "value": "(auth == \"Windows\")" - }, - "MultiOrgAuth": { - "type": "computed", - "value": "(auth == \"MultiOrg\")" - }, - "SingleOrgAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\")" - }, - "IndividualLocalAuth": { - "type": "computed", - "value": "(auth == \"Individual\")" - }, - "IndividualAuth": { - "type": "computed", - "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" - }, - "IndividualB2CAuth": { - "type": "computed", - "value": "(auth == \"IndividualB2C\")" - }, - "NoAuth": { - "type": "computed", - "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" - }, - "RequiresHttps": { - "type": "computed", - "value": "(OrganizationalAuth || IndividualB2CAuth)" - }, - "HasHttpProfile": { - "type": "computed", - "value": "(!RequiresHttps)" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(RequiresHttps || !NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - }, - "UseLocalDB": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "CalledApiUrl": { - "type": "parameter", - "datatype": "string", - "replaces": "[WebApiUrl]", - "defaultValue": "https://graph.microsoft.com/v1.0", - "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." - }, - "CallsMicrosoftGraph": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg or --auth MultiOrg is specified." - }, - "CalledApiScopes": { - "type": "parameter", - "datatype": "string", - "replaces": "user.read", - "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." - }, - "GenerateApi": { - "type": "computed", - "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" - }, - "GenerateGraph": { - "type": "computed", - "value": "(OrganizationalAuth && CallsMicrosoftGraph)" - }, - "GenerateApiOrGraph": { - "type": "computed", - "value": "(GenerateApi || GenerateGraph)" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.csproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json deleted file mode 100644 index 79478ad13720..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json +++ /dev/null @@ -1,456 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "MVC" - ], - "name": "ASP.NET Core Web App (Model-View-Controller)", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core MVC Views and Controllers. This template can also be used for RESTful HTTP services.", - "groupIdentity": "Microsoft.Web.Mvc", - "precedence": "10000", - "identity": "Microsoft.Web.Mvc.CSharp.10.0", - "shortName": "mvc", - "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID - ], - "sources": [ - { - "copyOnly": [ - "wwwroot/**" - ], - "modifiers": [ - { - "condition": "(!OrganizationalAuth && !IndividualAuth)", - "exclude": [ - "Views/Shared/_LoginPartial.Identity.cshtml", - "Views/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, - { - "condition": "(OrganizationalAuth || IndividualB2CAuth)", - "rename": { - "Views/Shared/_LoginPartial.OrgAuth.cshtml": "Views/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Views/Shared/_LoginPartial.Identity.cshtml" - ] - }, - { - "condition": "(IndividualLocalAuth)", - "rename": { - "Views/Shared/_LoginPartial.Identity.cshtml": "Views/Shared/_LoginPartial.cshtml" - }, - "exclude": [ - "Views/Shared/_LoginPartial.OrgAuth.cshtml" - ] - }, - { - "condition": "(!IndividualLocalAuth || UseLocalDB)", - "exclude": [ - "app.db" - ] - }, - { - "condition": "(!IndividualLocalAuth)", - "exclude": [ - "Data/**", - "Areas/**" - ] - }, - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(IndividualLocalAuth && UseLocalDB)", - "rename": { - "Data/SqlServer/": "Data/Migrations/" - }, - "exclude": [ - "Data/SqlLite/**" - ] - }, - { - "condition": "(IndividualLocalAuth && !UseLocalDB)", - "rename": { - "Data/SqlLite/": "Data/Migrations/" - }, - "exclude": [ - "Data/SqlServer/**" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "auth": { - "type": "parameter", - "datatype": "choice", - "choices": [ - { - "choice": "None", - "description": "No authentication" - }, - { - "choice": "Individual", - "description": "Individual authentication" - }, - { - "choice": "IndividualB2C", - "description": "Individual authentication with Azure AD B2C" - }, - { - "choice": "SingleOrg", - "description": "Organizational authentication for a single tenant" - }, - { - "choice": "MultiOrg", - "description": "Organizational authentication for multiple tenants" - }, - { - "choice": "Windows", - "description": "Windows authentication" - } - ], - "defaultValue": "None", - "description": "The type of authentication to use" - }, - "AAdB2CInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/tfp/", - "replaces": "https:////login.microsoftonline.com/tfp/", - "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." - }, - "SignUpSignInPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_susi", - "replaces": "MySignUpSignInPolicyId", - "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." - }, - "SignedOutCallbackPath": { - "type": "parameter", - "datatype": "string", - "defaultValue": "/signout/B2C_1_susi", - "replaces": "/signout/MySignUpSignInPolicyId", - "description": "The global signout callback (use with IndividualB2C auth)." - }, - "ResetPasswordPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_reset", - "replaces": "MyResetPasswordPolicyId", - "description": "The reset password policy ID for this project (use with IndividualB2C auth)." - }, - "EditProfilePolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_edit_profile", - "replaces": "MyEditProfilePolicyId", - "description": "The edit profile policy ID for this project (use with IndividualB2C auth)." - }, - "AADInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/", - "replaces": "https:////login.microsoftonline.com/", - "description": "The Azure Active Directory instance to connect to (use with SingleOrg or MultiOrg auth)." - }, - "ClientId": { - "type": "parameter", - "datatype": "string", - "replaces": "11111111-1111-1111-11111111111111111", - "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or MultiOrg auth)." - }, - "Domain": { - "type": "parameter", - "datatype": "string", - "replaces": "qualified.domain.name", - "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." - }, - "TenantId": { - "type": "parameter", - "datatype": "string", - "replaces": "22222222-2222-2222-2222-222222222222", - "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." - }, - "CallbackPath": { - "type": "parameter", - "datatype": "string", - "replaces": "/signin-oidc", - "defaultValue": "/signin-oidc", - "description": "The request path within the application's base path of the redirect URI (use with SingleOrg or IndividualB2C auth)." - }, - "OrgReadAccess": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg or MultiOrg auth)." - }, - "UserSecretsId": { - "type": "parameter", - "datatype": "string", - "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "OrganizationalAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" - }, - "WindowsAuth": { - "type": "computed", - "value": "(auth == \"Windows\")" - }, - "MultiOrgAuth": { - "type": "computed", - "value": "(auth == \"MultiOrg\")" - }, - "SingleOrgAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\")" - }, - "IndividualLocalAuth": { - "type": "computed", - "value": "(auth == \"Individual\")" - }, - "IndividualAuth": { - "type": "computed", - "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" - }, - "IndividualB2CAuth": { - "type": "computed", - "value": "(auth == \"IndividualB2C\")" - }, - "NoAuth": { - "type": "computed", - "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" - }, - "RequiresHttps": { - "type": "computed", - "value": "(OrganizationalAuth || IndividualB2CAuth)" - }, - "HasHttpProfile": { - "type": "computed", - "value": "(!RequiresHttps)" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(RequiresHttps || !NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - }, - "UseLocalDB": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "CalledApiUrl": { - "type": "parameter", - "datatype": "string", - "replaces": "[WebApiUrl]", - "defaultValue": "https://graph.microsoft.com/v1.0", - "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." - }, - "CallsMicrosoftGraph": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg or --auth MultiOrg is specified." - }, - "CalledApiScopes": { - "type": "parameter", - "datatype": "string", - "replaces": "user.read", - "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." - }, - "GenerateApi": { - "type": "computed", - "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" - }, - "GenerateGraph": { - "type": "computed", - "value": "(OrganizationalAuth && CallsMicrosoftGraph)" - }, - "GenerateApiOrGraph": { - "type": "computed", - "value": "(GenerateApi || GenerateGraph)" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.csproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json deleted file mode 100644 index 7507fabddd48..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json +++ /dev/null @@ -1,186 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "MVC" - ], - "name": "ASP.NET Core Web App (Model-View-Controller)", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core MVC Views and Controllers. This template can also be used for RESTful HTTP services.", - "groupIdentity": "Microsoft.Web.Mvc", - "precedence": "10000", - "identity": "Microsoft.Web.Mvc.FSharp.10.0", - "shortName": "mvc", - "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", - "tags": { - "language": "F#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "sources": [ - { - "copyOnly": [ - "wwwroot/**" - ], - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(!NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.fsproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json deleted file mode 100644 index c581b5457d40..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json +++ /dev/null @@ -1,438 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Web API", - "API", - "Service" - ], - "name": "ASP.NET Core Web API", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating a RESTful Web API using ASP.NET Core controllers or minimal APIs, with optional support for OpenAPI and authentication.", - "groupIdentity": "Microsoft.Web.WebApi", - "precedence": "10000", - "identity": "Microsoft.Web.WebApi.CSharp.10.0", - "shortName": "webapi", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID - ], - "sources": [ - { - "modifiers": [ - { - "condition": "(windir == 'C:\\Windows')", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs", - "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs", - "Program.MinimalAPIs.WindowsOrNoAuth.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - }, - { - "condition": "(UsingMinimalAPIs)", - "exclude": [ - "Controllers/WeatherForecastController.cs" - ] - }, - { - "condition": "(UsingMinimalAPIs && !UseProgramMain)", - "exclude": [ - "WeatherForecast.cs" - ] - }, - { - "condition": "(!UseProgramMain && UsingMinimalAPIs && (NoAuth || WindowsAuth))", - "exclude": [ - "Program.cs", - "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs" - ], - "rename": { - "Program.MinimalAPIs.WindowsOrNoAuth.cs": "Program.cs" - } - }, - { - "condition": "(!UseProgramMain && UsingMinimalAPIs && (IndividualAuth || OrganizationalAuth))", - "exclude": [ - "Program.cs", - "Program.MinimalAPIs.WindowsOrNoAuth.cs" - ], - "rename": { - "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs": "Program.cs" - } - }, - { - "condition": "(UsingControllers)", - "exclude": [ - "Program.MinimalAPIs.WindowsOrNoAuth.cs", - "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs" - ] - } - ] - } - ], - "symbols": { - "auth": { - "type": "parameter", - "datatype": "choice", - "choices": [ - { - "choice": "None", - "description": "No authentication" - }, - { - "choice": "IndividualB2C", - "description": "Individual authentication with Azure AD B2C" - }, - { - "choice": "SingleOrg", - "description": "Organizational authentication for a single tenant" - }, - { - "choice": "Windows", - "description": "Windows authentication" - } - ], - "defaultValue": "None", - "description": "The type of authentication to use" - }, - "AAdB2CInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://qualified.domain.name.b2clogin.com/", - "replaces": "https:////qualified.domain.name.b2clogin.com/", - "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." - }, - "SignUpSignInPolicyId": { - "type": "parameter", - "datatype": "string", - "defaultValue": "b2c_1_susi", - "replaces": "MySignUpSignInPolicyId", - "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." - }, - "AADInstance": { - "type": "parameter", - "datatype": "string", - "defaultValue": "https://login.microsoftonline.com/", - "replaces": "https:////login.microsoftonline.com/", - "description": "The Azure Active Directory instance to connect to (use with SingleOrg auth)." - }, - "ClientId": { - "type": "parameter", - "datatype": "string", - "replaces": "11111111-1111-1111-11111111111111111", - "description": "The Client ID for this project (use with SingleOrg or IndividualB2C auth)." - }, - "Domain": { - "type": "parameter", - "datatype": "string", - "replaces": "qualified.domain.name", - "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." - }, - "DefaultScope": { - "type": "parameter", - "datatype": "string", - "replaces": "api-scope", - "defaultValue": "access_as_user", - "description": "The API scope the client needs to request to provision an access token. (use with IndividualB2C, SingleOrg)." - }, - "TenantId": { - "type": "parameter", - "datatype": "string", - "replaces": "22222222-2222-2222-2222-222222222222", - "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." - }, - "OrgReadAccess": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg auth)." - }, - "UserSecretsId": { - "type": "parameter", - "datatype": "string", - "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", - "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." - }, - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json in the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "OrganizationalAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\")" - }, - "WindowsAuth": { - "type": "computed", - "value": "(auth == \"Windows\")" - }, - "SingleOrgAuth": { - "type": "computed", - "value": "(auth == \"SingleOrg\")" - }, - "IndividualAuth": { - "type": "computed", - "value": "(auth == \"IndividualB2C\")" - }, - "IndividualB2CAuth": { - "type": "computed", - "value": "(auth == \"IndividualB2C\")" - }, - "NoAuth": { - "type": "computed", - "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" - }, - "RequiresHttps": { - "type": "computed", - "value": "(OrganizationalAuth || IndividualB2CAuth)" - }, - "HasHttpProfile": { - "type": "computed", - "value": "(!RequiresHttps)" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(RequiresHttps || !NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." - }, - "UseLocalDB": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "CalledApiUrl": { - "type": "parameter", - "datatype": "string", - "replaces": "[WebApiUrl]", - "defaultValue": "https://graph.microsoft.com/v1.0", - "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg or --auth IndividualB2C is specified." - }, - "CallsMicrosoftGraph": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg is specified." - }, - "CalledApiScopes": { - "type": "parameter", - "datatype": "string", - "replaces": "user.read", - "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg or --auth IndividualB2C is specified." - }, - "GenerateApi": { - "type": "computed", - "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" - }, - "GenerateGraph": { - "type": "computed", - "value": "(OrganizationalAuth && CallsMicrosoftGraph)" - }, - "GenerateApiOrGraph": { - "type": "computed", - "value": "(GenerateApi || GenerateGraph)" - }, - "DisableOpenAPI": { - "type": "parameter", - "dataType": "bool", - "defaultValue": "false", - "description": "Disable OpenAPI (Swagger) support" - }, - "EnableOpenAPI": { - "type": "computed", - "value": "(!DisableOpenAPI)" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "UseMinimalAPIs": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "true", - "description": "Whether to use minimal APIs instead of controllers." - }, - "UseControllers": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to use controllers instead of minimal APIs. This option overides the value specified by --minimal." - }, - "UsingControllers": { - "type": "computed", - "value": "(UseControllers || !UseMinimalAPIs)" - }, - "UsingMinimalAPIs": { - "type": "computed", - "value": "(!UsingControllers)" - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.csproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json deleted file mode 100644 index ae7a8a90a4e4..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json +++ /dev/null @@ -1,181 +0,0 @@ -{ - "author": "Microsoft", - "classifications": [ - "Web", - "Web API" - ], - "name": "ASP.NET Core Web API", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating an ASP.NET Core application with an example Controller for a RESTful HTTP service. This template can also be used for ASP.NET Core MVC Views and Controllers.", - "groupIdentity": "Microsoft.Web.WebApi", - "precedence": "10000", - "identity": "Microsoft.Web.WebApi.FSharp.10.0", - "shortName": "webapi", - "tags": { - "language": "F#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "kestrelHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTPS endpoint in launchSettings.json." - }, - "kestrelHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 7000, - "high": 7300 - } - }, - "kestrelHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpsPort", - "fallbackVariableName": "kestrelHttpsPortGenerated" - }, - "replaces": "5001" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "iisHttpsPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json." - }, - "iisHttpsPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 44300, - "high": 44399 - } - }, - "iisHttpsPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpsPort", - "fallbackVariableName": "iisHttpsPortGenerated" - }, - "replaces": "44300" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "HasHttpsProfile": { - "type": "computed", - "value": "(!NoHttps)" - }, - "NoHttps": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to turn off HTTPS." - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.fsproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json deleted file mode 100644 index a4b53862f6ea..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json +++ /dev/null @@ -1,165 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Web", - "Web API", - "API", - "Service" - ], - "name": "ASP.NET Core Web API (native AOT)", - "generatorVersions": "[1.0.0.0-*)", - "description": "A project template for creating a RESTful Web API using ASP.NET Core minimal APIs published as native AOT, with optional support for OpenAPI.", - "groupIdentity": "Microsoft.Web.WebApiAot", - "precedence": "10000", - "identity": "Microsoft.Web.WebApiAot.CSharp.10.0", - "shortName": "webapiaot", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.WebApplication1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" - ], - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "kestrelHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the HTTP endpoint in launchSettings.json." - }, - "kestrelHttpPortGenerated": { - "type": "generated", - "generator": "port", - "parameters": { - "low": 5000, - "high": 5300 - } - }, - "kestrelHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "kestrelHttpPort", - "fallbackVariableName": "kestrelHttpPortGenerated" - }, - "replaces": "5000" - }, - "iisHttpPort": { - "type": "parameter", - "datatype": "integer", - "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." - }, - "iisHttpPortGenerated": { - "type": "generated", - "generator": "port" - }, - "iisHttpPortReplacer": { - "type": "generated", - "generator": "coalesce", - "parameters": { - "sourceVariableName": "iisHttpPort", - "fallbackVariableName": "iisHttpPortGenerated" - }, - "replaces": "8080" - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "DisableOpenAPI": { - "type": "parameter", - "dataType": "bool", - "defaultValue": "false", - "description": "Disable OpenAPI (Swagger) support" - }, - "EnableOpenAPI": { - "type": "computed", - "value": "(!DisableOpenAPI)" - } - }, - "primaryOutputs": [ - { - "path": "Company.WebApplication1.csproj" - } - ], - "defaultName": "WebApplication", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json deleted file mode 100644 index 934552d8bfca..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json +++ /dev/null @@ -1,121 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Common", - "Worker", - "Web" - ], - "name": "Worker Service", - "generatorVersions": "[1.0.0.0-*)", - "description": "An empty project template for creating a worker service.", - "groupIdentity": "Microsoft.Worker.Empty", - "precedence": "10000", - "identity": "Microsoft.Worker.Empty.CSharp.10.0", - "shortName": "worker", - "tags": { - "language": "C#", - "type": "project" - }, - "sourceName": "Company.Application1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" - ], - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - }, - { - "condition": "(!UseProgramMain)", - "exclude": [ - "Program.Main.cs" - ] - }, - { - "condition": "(UseProgramMain)", - "exclude": [ - "Program.cs" - ], - "rename": { - "Program.Main.cs": "Program.cs" - } - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - }, - "UseProgramMain": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Do not use _top-level statements", - "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." - }, - "NativeAot" : { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "displayName": "Enable _native AOT publish", - "description": "Whether to enable the project for publishing as native AOT." - } - }, - "primaryOutputs": [ - { - "path": "Company.Application1.csproj" - } - ], - "defaultName": "WorkerService", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json deleted file mode 100644 index 2215f34b7ca2..000000000000 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json +++ /dev/null @@ -1,92 +0,0 @@ -{ - "$schema": "https://json.schemastore.org/template", - "author": "Microsoft", - "classifications": [ - "Common", - "Worker", - "Web" - ], - "name": "Worker Service", - "generatorVersions": "[1.0.0.0-*)", - "description": "An empty project template for creating a worker service.", - "groupIdentity": "Microsoft.Worker.Empty", - "precedence": "10000", - "identity": "Microsoft.Worker.Empty.FSharp.10.0", - "shortName": "worker", - "tags": { - "language": "F#", - "type": "project" - }, - "sourceName": "Company.Application1", - "preferNameDirectory": true, - "guids": [ - "53bc9b9d-9d6a-45d4-8429-2a2761773502" - ], - "sources": [ - { - "modifiers": [ - { - "condition": "(ExcludeLaunchSettings)", - "exclude": [ - "Properties/launchSettings.json" - ] - } - ] - } - ], - "symbols": { - "ExcludeLaunchSettings": { - "type": "parameter", - "datatype": "bool", - "defaultValue": "false", - "description": "Whether to exclude launchSettings.json from the generated template." - }, - "Framework": { - "type": "parameter", - "description": "The target framework for the project.", - "datatype": "choice", - "choices": [ - { - "choice": "net10.0", - "description": "Target net10.0" - } - ], - "replaces": "net10.0", - "defaultValue": "net10.0" - }, - "copyrightYear": { - "type": "generated", - "generator": "now", - "replaces": "copyrightYear", - "parameters": { - "format": "yyyy" - } - }, - "skipRestore": { - "type": "parameter", - "datatype": "bool", - "description": "If specified, skips the automatic restore of the project on create.", - "defaultValue": "false" - } - }, - "primaryOutputs": [ - { - "path": "Company.Application1.fsproj" - } - ], - "defaultName": "WorkerService", - "postActions": [ - { - "id": "restore", - "condition": "(!skipRestore)", - "description": "Restore NuGet packages required by this project.", - "manualInstructions": [ - { - "text": "Run 'dotnet restore'" - } - ], - "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", - "continueOnError": true - } - ] -} diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs index ef46a52f7bac..b5fc2ac2658b 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs @@ -1,19 +1,59 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. +using System; +using System.Linq; +using System.Threading.Tasks; using Microsoft.AspNetCore.InternalTesting; +using Microsoft.Extensions.Logging; using Templates.Test.Helpers; +using Xunit.Abstractions; namespace Templates.Blazor.Test; #pragma warning disable xUnit1041 // Fixture arguments to test classes must have fixture sources -public class BlazorWasmTemplateAuthTest : BlazorTemplateTest +public class BlazorWasmTemplateAuthTest : LoggedTest { public BlazorWasmTemplateAuthTest(ProjectFactoryFixture projectFactory) - : base(projectFactory) { } + { + ProjectFactory = projectFactory; + } + + public ProjectFactoryFixture ProjectFactory { get; set; } + + private ITestOutputHelper _output; + public ITestOutputHelper Output + { + get + { + if (_output == null) + { + _output = new TestOutputLogger(Logger); + } + return _output; + } + } - public override string ProjectType { get; } = "blazorwasm"; + public string ProjectType { get; } = "blazorwasm"; + + protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null) + { + // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 + Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); + + var project = await ProjectFactory.CreateProject(Output); + if (targetFramework != null) + { + project.TargetFramework = targetFramework; + } + + await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); + + await project.RunDotNetPublishAsync(noRestore: false); + + return project; + } [Fact] public async Task BlazorWasmStandaloneTemplate_IndividualAuth_CreateBuildPublish() @@ -114,3 +154,26 @@ public Task BlazorWasmStandaloneTemplate_AzureActiveDirectoryTemplate_SingleOrg_ public Task BlazorWasmStandaloneTemplate_AzureActiveDirectoryTemplate_SingleOrg_NoHttps_ProgramMain_Works(TemplateInstance instance) => CreateBuildPublishAsync(auth: instance.Auth, args: instance.Arguments.Union(new[] { ArgConstants.NoHttps }).ToArray(), targetFramework: "netstandard2.1"); } + +internal sealed class TestOutputLogger : ITestOutputHelper +{ + private readonly ILogger _logger; + + public TestOutputLogger(ILogger logger) + { + _logger = logger; + } + + public void WriteLine(string message) + { + _logger.LogInformation(message); + } + + public void WriteLine(string format, params object[] args) + { + if (_logger.IsEnabled(LogLevel.Information)) + { + _logger.LogInformation(string.Format(System.Globalization.CultureInfo.InvariantCulture, format, args)); + } + } +} diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs index 9fbc9ae02110..c32442136352 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs @@ -9,6 +9,7 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; using Microsoft.AspNetCore.InternalTesting; +using Microsoft.Extensions.Logging; using Newtonsoft.Json.Linq; using Templates.Test.Helpers; using Xunit; @@ -19,12 +20,47 @@ namespace Templates.Blazor.Test; #pragma warning disable xUnit1041 // Fixture arguments to test classes must have fixture sources -public class BlazorWasmTemplateTest : BlazorTemplateTest +public class BlazorWasmTemplateTest : LoggedTest { public BlazorWasmTemplateTest(ProjectFactoryFixture projectFactory) - : base(projectFactory) { } + { + ProjectFactory = projectFactory; + } + + public ProjectFactoryFixture ProjectFactory { get; set; } + + private ITestOutputHelper _output; + public ITestOutputHelper Output + { + get + { + if (_output == null) + { + _output = new TestOutputLogger(Logger); + } + return _output; + } + } + + public string ProjectType { get; } = "blazorwasm"; - public override string ProjectType { get; } = "blazorwasm"; + protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null) + { + // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 + Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); + + var project = await ProjectFactory.CreateProject(Output); + if (targetFramework != null) + { + project.TargetFramework = targetFramework; + } + + await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); + + await project.RunDotNetPublishAsync(noRestore: false); + + return project; + } [Fact] public async Task BlazorWasmStandaloneTemplateCanCreateBuildPublish() @@ -82,3 +118,26 @@ public Task BlazorWasmStandalonePwaTemplateNoHttpsCanCreateBuildPublish() public Task BlazorWasmStandalonePwaEmptyTemplateNoHttpsCanCreateBuildPublish() => CreateBuildPublishAsync(args: new[] { ArgConstants.Pwa, ArgConstants.NoHttps, ArgConstants.Empty }); } + +internal sealed class TestOutputLogger : ITestOutputHelper +{ + private readonly ILogger _logger; + + public TestOutputLogger(ILogger logger) + { + _logger = logger; + } + + public void WriteLine(string message) + { + _logger.LogInformation(message); + } + + public void WriteLine(string format, params object[] args) + { + if (_logger.IsEnabled(LogLevel.Information)) + { + _logger.LogInformation(string.Format(System.Globalization.CultureInfo.InvariantCulture, format, args)); + } + } +} From 64c6e082ee188d4d585e6ac933a32fce59e30dec Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 11:00:58 +0000 Subject: [PATCH 3/6] Disable UsingToolTemplateLocalizer to fix build after removing template.json files Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- .../Microsoft.DotNet.Web.Client.ItemTemplates.csproj | 2 +- .../Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj | 2 +- .../Microsoft.DotNet.Web.ProjectTemplates.csproj | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj b/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj index c05ae08ce8ea..e602e78cebdc 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj @@ -3,7 +3,7 @@ $(DefaultNetCoreTargetFramework) Web Client-Side File Templates for Microsoft Template Engine - true + false diff --git a/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj b/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj index 439c0e07701c..c147de713b53 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj +++ b/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj @@ -4,7 +4,7 @@ $(DefaultNetCoreTargetFramework) Microsoft.DotNet.Web.ItemTemplates.$(AspNetCoreMajorMinorVersion) Web File Templates for Microsoft Template Engine. - true + false diff --git a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj index 92879cd52586..00bf3f05c118 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj +++ b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj @@ -5,7 +5,7 @@ Microsoft.DotNet.Web.ProjectTemplates.$(AspNetCoreMajorMinorVersion) ASP.NET Core Web Template Pack for Microsoft Template Engine $(RepoRoot)src\Components\WebAssembly\ - true + false From f7359d7a6351f75ac8f85b68a94e5bc940e7781e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 11:13:28 +0000 Subject: [PATCH 4/6] Exclude localize files from newline check and remove trailing newlines from templatestrings.*.json files Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../test/Templates.Tests/NewlineEndingTest.cs | 5 +++-- 52 files changed, 54 insertions(+), 53 deletions(-) diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.cs.json index 9f249730f3e9..d20543643e95 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.cs.json @@ -4,4 +4,4 @@ "description": "Soubor vyrovnávací paměti protokolu pro popis zpráv a služeb pro gRPC", "symbols/namespace/description": "obor názvů pro vygenerovaný kód", "postActions/openInEditor/description": "Otevře soubor protobuf.proto v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.de.json index 0825a8734c5a..3db1c194edf3 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.de.json @@ -4,4 +4,4 @@ "description": "Eine Protokollpufferdatei zum Beschreiben von Nachrichten und Diensten für gRPC.", "symbols/namespace/description": "Namespace für den generierten Code", "postActions/openInEditor/description": "Öffnet protobuf.proto im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.en.json index 3b5b8e5dcabb..13d79b81d9fa 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.en.json @@ -4,4 +4,4 @@ "description": "A protocol buffer file for describing messages and services for gRPC.", "symbols/namespace/description": "namespace for the generated code", "postActions/openInEditor/description": "Opens protobuf.proto in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.es.json index 725f2f107f89..25b148a8054d 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.es.json @@ -4,4 +4,4 @@ "description": "Archivo de búfer de protocolo para describir mensajes y servicios para gRPC.", "symbols/namespace/description": "espacio de nombres para el código generado", "postActions/openInEditor/description": "Abre protobuf.proto en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.fr.json index 500c6df420bc..ba1df56ca44e 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.fr.json @@ -4,4 +4,4 @@ "description": "Fichier tampon de protocole pour la description des messages et des services pour gRPC.", "symbols/namespace/description": "espace de noms pour le code généré", "postActions/openInEditor/description": "Ouvre protobuf.proto dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.it.json index 54ae5265e915..cf9cb24a9d87 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.it.json @@ -4,4 +4,4 @@ "description": "File di buffer del protocollo per descrivere messaggi e servizi per gRPC.", "symbols/namespace/description": "spazio dei nomi per il codice generato", "postActions/openInEditor/description": "Apre protobuf.proto nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ja.json index 53bd2ec420db..a568015c890b 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ja.json @@ -4,4 +4,4 @@ "description": "gRPC 用のメッセージとサービスを記述するためのプロトコル バッファー ファイル。", "symbols/namespace/description": "生成されたコードの名前空間", "postActions/openInEditor/description": "エディターで protobuf.proto を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ko.json index 99781baa6957..f8b90f323b01 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ko.json @@ -4,4 +4,4 @@ "description": "gRPC의 메시지 및 서비스를 설명하는 프로토콜 버퍼 파일입니다.", "symbols/namespace/description": "생성된 코드의 네임스페이스", "postActions/openInEditor/description": "편집기에서 protobuf.proto를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pl.json index 10da943893bd..5a6025c6799f 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pl.json @@ -4,4 +4,4 @@ "description": "Plik buforu protokołu służący do opisywania komunikatów i usług na potrzeby systemu gRPC.", "symbols/namespace/description": "przestrzeń nazw wygenerowanego kodu.", "postActions/openInEditor/description": "Otwiera plik protobuf.proto w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pt-BR.json index ca19b0fe55ef..26e438d18c4c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.pt-BR.json @@ -4,4 +4,4 @@ "description": "Um arquivo de buffer de protocolo para descrever mensagens e serviços para gRPC.", "symbols/namespace/description": "namespace do código gerado", "postActions/openInEditor/description": "Abre protobuf.proto no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ru.json index 86a914e93937..0323c6b347cd 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.ru.json @@ -4,4 +4,4 @@ "description": "Файл буфера протокола для описания сообщений и служб для gRPC.", "symbols/namespace/description": "пространство имен для созданного кода", "postActions/openInEditor/description": "Открывает protobuf.proto в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.tr.json index fbec1f4dd7c2..eb077934a226 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.tr.json @@ -4,4 +4,4 @@ "description": "gRPC için iletileri ve hizmetleri açıklamak için bir protokol arabelleği dosyası.", "symbols/namespace/description": "oluşturulan kod için ad alanı", "postActions/openInEditor/description": "Düzenleyicide protobuf.proto dosyasını açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hans.json index 50dd08507eed..d0bc499cdcfe 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hans.json @@ -4,4 +4,4 @@ "description": "一个协议缓冲区文件,它用于描述 gRPC 的消息和服务。", "symbols/namespace/description": "生成的代码的命名空间", "postActions/openInEditor/description": "在编辑器中打开 protobuf.proto" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hant.json index 96904ef4c7c5..fdba7a011bb6 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/localize/templatestrings.zh-Hant.json @@ -4,4 +4,4 @@ "description": "用來描述 gRPC 訊息和服務的通訊協定緩衝區檔案。", "symbols/namespace/description": "適用於產生之程式碼的命名空間", "postActions/openInEditor/description": "在編輯器中開啟 protobuf.proto" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.cs.json index 105c71fcb425..40e5e585a9b4 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "Komponenta Razor", "description": "Opětovně použitelná komponenta uživatelského rozhraní implementovaná pomocí Razoru", "postActions/openInEditor/description": "Otevře soubor Component1.razor v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.de.json index 487a083b4c2d..6c443a74e1e6 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "Razor Komponente", "description": "Eine mit Razor implementierte, wiederverwendbare Benutzeroberflächenkomponente.", "postActions/openInEditor/description": "Öffnet Component1.razor im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.en.json index ac29e70a2c32..173ab06e59f8 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.en.json @@ -3,4 +3,4 @@ "name": "Razor Component", "description": "A reusable UI component implemented with Razor", "postActions/openInEditor/description": "Opens Component1.razor in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.es.json index 1eba983f6d41..687457d2cb84 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "Componente Razor", "description": "Componente de interfaz de usuario reutilizable implementado con Razor", "postActions/openInEditor/description": "Abre Component1.razor en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.fr.json index caf16d90317e..8798cedfbcdc 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "Composant Razor", "description": "Composant d'interface utilisateur réutilisable implémenté avec Razor", "postActions/openInEditor/description": "Ouvre Component1.razor dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.it.json index 90e1befc9b10..530175949b77 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "Componente Razor", "description": "Componente riutilizzabile dell'interfaccia utente implementato con Razor", "postActions/openInEditor/description": "Apre Component1.razor nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ja.json index 32087493e1f9..d666e25f5045 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "Razor コンポーネント", "description": "Razor で実装された再利用可能な UI コンポーネント", "postActions/openInEditor/description": "エディターで Component1.razor を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ko.json index 7fb33525c471..5bf5dba4e08d 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "Razor 구성 요소", "description": "Razor로 구현된 재사용 가능한 UI 구성 요소", "postActions/openInEditor/description": "편집기에서 Component1.razor를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pl.json index 607407a85a61..67b208a0f85c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "Składnik Razor", "description": "Składnik interfejsu użytkownika wielokrotnego użytku implementowany przy użyciu składni Razor", "postActions/openInEditor/description": "Otwiera plik Component1.razor w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pt-BR.json index 87c199837fdc..5a2e3fa5d5af 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "Componente Razor", "description": "Um componente de interface do usuário reutilizável implementado com o Razor", "postActions/openInEditor/description": "Abre Component1.razor no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ru.json index 7be79eeef918..7383877e73b7 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "Компонент Razor", "description": "Компонент пользовательского интерфейса для повторного использования, реализованный с помощью Razor", "postActions/openInEditor/description": "Открывает Component1.razor в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.tr.json index 4687d062c330..32a9ecec99da 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "Razor Bileşeni", "description": "Razor ile birlikte uygulanan yeniden kullanılabilir bir kullanıcı arabirimi bileşeni", "postActions/openInEditor/description": "Component1.razor'ı düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hans.json index c8e5332621ef..810ee15dae8e 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "Razor 组件", "description": "使用 Razor 实现的可重用 UI 组件", "postActions/openInEditor/description": "在编辑器中打开 Component1.razor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hant.json index 397663917d3c..229686374ca0 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "Razor 元件", "description": "透過 Razor 實作且可重複使用的 UI 元件", "postActions/openInEditor/description": "在編輯器中開啟 Component1.razor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.cs.json index 01d515ddcfea..199823b32f62 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "Zobrazení Razor", "description": "Prázdné zobrazení Razor", "postActions/openInEditor/description": "Otevře vytvořené zobrazení v editoru" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.en.json index ae0f6ab22d40..616680f1e671 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.en.json @@ -4,4 +4,4 @@ "description": "An empty Razor View", "_description.comment": "Reviewers: Could also be 'A Razor view without a page model'. And should View be capitalized?", "postActions/openInEditor/description": "Opens the created view in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.es.json index f9bead1ef042..385183d7695d 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "Vista de Razor", "description": "Vista de Razor vacía", "postActions/openInEditor/description": "Abre la vista creada en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.it.json index 88b013714c78..908bc2ca3c82 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "Visualizzazione Razor", "description": "Una visualizzazione Razor vuota", "postActions/openInEditor/description": "Apre la visualizzazione creata nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ko.json index 14fc0729216d..f0475482ba82 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "Razor 뷰", "description": "빈 Razor 뷰", "postActions/openInEditor/description": "편집기에서 생성된 뷰를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pl.json index d6b583d1829e..fb03573d4da8 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "Widok Razor", "description": "Pusty widok Razor", "postActions/openInEditor/description": "Otwiera utworzony widok w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pt-BR.json index f63b63360653..948bdcab4303 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "Exibição do Razor", "description": "Uma Exibição do Razor vazia", "postActions/openInEditor/description": "Abre o modo de exibição criado no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.tr.json index b53d0dd2f01a..106340ff3b8f 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "Razor Görünümü", "description": "Boş Razor Görünümü", "postActions/openInEditor/description": "Oluşturulan görünümü düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hant.json index 830f17f34659..7e697f6d5447 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "Razor 檢視", "description": "空白的 Razor 檢視", "postActions/openInEditor/description": "在編輯器中開啟建立的檢視" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.cs.json index 466e99e14dde..24cae74d83d0 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.cs.json @@ -4,4 +4,4 @@ "description": "Stránka importu zobrazení MVC", "symbols/namespace/description": "obor názvů pro vygenerovaný kód", "postActions/openInEditor/description": "Otevře soubor _ViewImports.cshtml v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.de.json index 14ffac904a13..20b86bd8522e 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.de.json @@ -4,4 +4,4 @@ "description": "Eine MVC View Importseite", "symbols/namespace/description": "Namespace für den generierten Code", "postActions/openInEditor/description": "Öffnet _ViewImports.cshtml im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.en.json index dd9a9b817f1c..bc11b8d35ce5 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.en.json @@ -4,4 +4,4 @@ "description": "An MVC View Import Page", "symbols/namespace/description": "namespace for the generated code", "postActions/openInEditor/description": "Opens _ViewImports.cshtml in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.es.json index 4825eeccf370..d8ca9b964f1a 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.es.json @@ -4,4 +4,4 @@ "description": "Una página de importación de vista de MVC", "symbols/namespace/description": "espacio de nombres para el código generado", "postActions/openInEditor/description": "Abre _ViewImports.cshtml en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.fr.json index dbf019629e57..1a8622ba1126 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.fr.json @@ -4,4 +4,4 @@ "description": "Page d’importation d’affichage MVC", "symbols/namespace/description": "espace de noms pour le code généré", "postActions/openInEditor/description": "Ouvre _ViewImports.cshtml dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.it.json index 8eda35eaf9ec..aa263581346a 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.it.json @@ -4,4 +4,4 @@ "description": "Pagina di importazione di una visualizzazione MVC", "symbols/namespace/description": "spazio dei nomi per il codice generato", "postActions/openInEditor/description": "Apre _ViewImports.cshtml nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ja.json index 5fa58c1357d0..ff967114e95c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ja.json @@ -4,4 +4,4 @@ "description": "MVC ビュー インポート ページ", "symbols/namespace/description": "生成されたコードの名前空間", "postActions/openInEditor/description": "エディターで _ViewImports.cshtml を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ko.json index 9ae6d9809401..ac3592a11993 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ko.json @@ -4,4 +4,4 @@ "description": "MVC 보기 가져오기 페이지", "symbols/namespace/description": "생성된 코드의 네임스페이스", "postActions/openInEditor/description": "편집기에서 _ViewImports.cshtml을 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pl.json index d469dd7ebd08..6f883ba22232 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pl.json @@ -4,4 +4,4 @@ "description": "Strona importowania widoku MVC", "symbols/namespace/description": "przestrzeń nazw wygenerowanego kodu.", "postActions/openInEditor/description": "Otwiera plik _ViewImports.cshtml w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pt-BR.json index 1cd142780247..134e47723da7 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.pt-BR.json @@ -4,4 +4,4 @@ "description": "Uma página de importação de visualização MVC", "symbols/namespace/description": "namespace do código gerado", "postActions/openInEditor/description": "Abre _ViewImports.cshtml no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ru.json index 64b24d676a6b..ea89715fdfbe 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.ru.json @@ -4,4 +4,4 @@ "description": "Страница импорта представления MVC", "symbols/namespace/description": "пространство имен для созданного кода", "postActions/openInEditor/description": "Открывает _ViewImports.cshtml в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.tr.json index 8fe5de2f41c3..ae33630d13e9 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.tr.json @@ -4,4 +4,4 @@ "description": "MVC Görünümü İçeri Aktarma Sayfası", "symbols/namespace/description": "oluşturulan kod için ad alanı", "postActions/openInEditor/description": "Düzenleyicide _ViewImports.cshtml dosyasını açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hans.json index e35b2f9fac1c..c2f6bc2b74f0 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hans.json @@ -4,4 +4,4 @@ "description": "MVC 视图导入页", "symbols/namespace/description": "生成的代码的命名空间", "postActions/openInEditor/description": "在编辑器中打开 _ViewImports.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hant.json index 92ec06a10a6a..b8f00b45c751 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/localize/templatestrings.zh-Hant.json @@ -4,4 +4,4 @@ "description": "MVC 檢視匯入頁面", "symbols/namespace/description": "適用於產生之程式碼的命名空間", "postActions/openInEditor/description": "在編輯器中開啟 _ViewImports.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/test/Templates.Tests/NewlineEndingTest.cs b/src/ProjectTemplates/test/Templates.Tests/NewlineEndingTest.cs index 96d2c9b0e0f4..313b77b0f67d 100644 --- a/src/ProjectTemplates/test/Templates.Tests/NewlineEndingTest.cs +++ b/src/ProjectTemplates/test/Templates.Tests/NewlineEndingTest.cs @@ -36,7 +36,7 @@ public void TemplateFiles_ShouldEndWithNewline(string projectName) var filesWithoutNewlineEnding = new List(); - // Get all template source files (excluding third-party libraries) + // Get all template source files (excluding third-party libraries and auto-generated localization files) var files = Directory.GetFiles(templateDirectoryPath, "*.cs", SearchOption.AllDirectories) .Concat(Directory.GetFiles(templateDirectoryPath, "*.fs", SearchOption.AllDirectories)) .Concat(Directory.GetFiles(templateDirectoryPath, "*.razor", SearchOption.AllDirectories)) @@ -50,7 +50,8 @@ public void TemplateFiles_ShouldEndWithNewline(string projectName) .Concat(Directory.GetFiles(templateDirectoryPath, "*.xml", SearchOption.AllDirectories)) .Concat(Directory.GetFiles(templateDirectoryPath, "*.csproj", SearchOption.AllDirectories)) .Concat(Directory.GetFiles(templateDirectoryPath, "*.fsproj", SearchOption.AllDirectories)) - .Where(f => !f.Contains($"{Path.DirectorySeparatorChar}wwwroot{Path.DirectorySeparatorChar}lib{Path.DirectorySeparatorChar}")); // Exclude third-party libraries + .Where(f => !f.Contains($"{Path.DirectorySeparatorChar}wwwroot{Path.DirectorySeparatorChar}lib{Path.DirectorySeparatorChar}")) // Exclude third-party libraries + .Where(f => !f.Contains($"{Path.DirectorySeparatorChar}.template.config{Path.DirectorySeparatorChar}localize{Path.DirectorySeparatorChar}")); // Exclude auto-generated localization files in localize directory foreach (var file in files) { From 3d7e32e0608a159be3d4136a0b3c6d3c4dc781c9 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 11:14:34 +0000 Subject: [PATCH 5/6] Remove trailing newlines from remaining templatestrings.*.json files Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- .../Less/.template.config/localize/templatestrings.cs.json | 2 +- .../Less/.template.config/localize/templatestrings.de.json | 2 +- .../Less/.template.config/localize/templatestrings.en.json | 2 +- .../Less/.template.config/localize/templatestrings.es.json | 2 +- .../Less/.template.config/localize/templatestrings.fr.json | 2 +- .../Less/.template.config/localize/templatestrings.it.json | 2 +- .../Less/.template.config/localize/templatestrings.ja.json | 2 +- .../Less/.template.config/localize/templatestrings.ko.json | 2 +- .../Less/.template.config/localize/templatestrings.pl.json | 2 +- .../Less/.template.config/localize/templatestrings.pt-BR.json | 2 +- .../Less/.template.config/localize/templatestrings.ru.json | 2 +- .../Less/.template.config/localize/templatestrings.tr.json | 2 +- .../Less/.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../Less/.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../Scss/.template.config/localize/templatestrings.cs.json | 2 +- .../Scss/.template.config/localize/templatestrings.de.json | 2 +- .../Scss/.template.config/localize/templatestrings.en.json | 2 +- .../Scss/.template.config/localize/templatestrings.es.json | 2 +- .../Scss/.template.config/localize/templatestrings.fr.json | 2 +- .../Scss/.template.config/localize/templatestrings.it.json | 2 +- .../Scss/.template.config/localize/templatestrings.ja.json | 2 +- .../Scss/.template.config/localize/templatestrings.ko.json | 2 +- .../Scss/.template.config/localize/templatestrings.pl.json | 2 +- .../Scss/.template.config/localize/templatestrings.pt-BR.json | 2 +- .../Scss/.template.config/localize/templatestrings.ru.json | 2 +- .../Scss/.template.config/localize/templatestrings.tr.json | 2 +- .../Scss/.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../Scss/.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.cs.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.de.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.en.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.es.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.fr.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.it.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.ja.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.ko.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.ru.json | 2 +- .../RazorPage/.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../RazorView/.template.config/localize/templatestrings.de.json | 2 +- .../RazorView/.template.config/localize/templatestrings.fr.json | 2 +- .../RazorView/.template.config/localize/templatestrings.ja.json | 2 +- .../RazorView/.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.cs.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.de.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.en.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.es.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.fr.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.it.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.ja.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.ko.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.ru.json | 2 +- .../ViewStart/.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- .../.template.config/localize/templatestrings.cs.json | 2 +- .../.template.config/localize/templatestrings.de.json | 2 +- .../.template.config/localize/templatestrings.en.json | 2 +- .../.template.config/localize/templatestrings.es.json | 2 +- .../.template.config/localize/templatestrings.fr.json | 2 +- .../.template.config/localize/templatestrings.it.json | 2 +- .../.template.config/localize/templatestrings.ja.json | 2 +- .../.template.config/localize/templatestrings.ko.json | 2 +- .../.template.config/localize/templatestrings.pl.json | 2 +- .../.template.config/localize/templatestrings.pt-BR.json | 2 +- .../.template.config/localize/templatestrings.ru.json | 2 +- .../.template.config/localize/templatestrings.tr.json | 2 +- .../.template.config/localize/templatestrings.zh-Hans.json | 2 +- .../.template.config/localize/templatestrings.zh-Hant.json | 2 +- 299 files changed, 299 insertions(+), 299 deletions(-) diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.cs.json index 14fba581fe0c..ef7a42354893 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "Šablona stylů LESS", "description": "LESS je jazyk kompilovaný do šablon stylů CSS.", "postActions/openInEditor/description": "Otevře soubor styleSheet1.less v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.de.json index a42e940a4dff..b0bfe36ca728 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "LESS Stylesheet", "description": "LESS ist eine Sprache, die in CSS kompiliert wird", "postActions/openInEditor/description": "Öffnet styleSheet1.less im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.en.json index 685702edde1f..292e2d4e1d6d 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.en.json @@ -3,4 +3,4 @@ "name": "LESS Style Sheet", "description": "LESS is a language that compiles into CSS", "postActions/openInEditor/description": "Opens styleSheet1.less in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.es.json index c2106fb0d562..9de474e97556 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "Hoja de estilos LESS", "description": "LESS es un lenguaje que se compila en CSS", "postActions/openInEditor/description": "Abre styleSheet1.less en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.fr.json index 039ca8085dac..63b851584f79 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "Feuille de style LESS", "description": "LESS est un langage compilé en CSS", "postActions/openInEditor/description": "Ouvre styleSheet1.less dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.it.json index 50994ac62bea..871ba291e53c 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "Foglio di stile LESS", "description": "LESS è un linguaggio che viene compilato in CSS.", "postActions/openInEditor/description": "Apre styleSheet1.less nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ja.json index dedeb099ba42..b3bccfbf5e66 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "LESS スタイル シート", "description": "LESS は CSS にコンパイルされる言語です", "postActions/openInEditor/description": "エディターで styleSheet1.less を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ko.json index ea5c86a85314..d5b5c4de4e4d 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "LESS 스타일 시트", "description": "LESS는 CSS로 컴파일되는 언어입니다.", "postActions/openInEditor/description": "편집기에서 styleSheet1.less를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pl.json index 92c8fbae1ef7..c3a1d05e0491 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "Arkusz stylów języka LESS", "description": "LESS to język kompilowany na język CSS.", "postActions/openInEditor/description": "Otwiera plik styleSheet1.less w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pt-BR.json index 4081e5f29fb7..88394ef8b7b6 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "Folha de Estilo LESS", "description": "LESS é uma linguagem que compila em CSS", "postActions/openInEditor/description": "Abre styleSheet1.less no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ru.json index b5fd314a7f75..e874d82a141f 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "Таблица стилей LESS", "description": "LESS – это язык, компилируемый в CSS", "postActions/openInEditor/description": "Открывает styleSheet1.less в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.tr.json index f39a25bc8524..ea8e78f1e272 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "LESS Stil Sayfası", "description": "LESS, CSS ile derlenen bir dildir", "postActions/openInEditor/description": "Düzenleyicide styleSheet1.less dosyasını açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hans.json index fa18567bcd9f..e76d67e434c9 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "LESS 样式表", "description": "LESS 是可编译为 CSS 的一种语言", "postActions/openInEditor/description": "在编辑器中打开 styleSheet1.less" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hant.json index 440579bfef4c..5aaf31184b48 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "LESS 樣式表", "description": "LESS 是編譯成 CSS 的語言。", "postActions/openInEditor/description": "在編輯器中開啟 styleSheet1.less" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.cs.json index 9dad476b5503..852994fe326b 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "Šablona stylů SCSS (SASS)", "description": "SCSS je jazyk kompilovaný do šablon stylů CSS.", "postActions/openInEditor/description": "Otevře soubor styleSheet1.scss v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.de.json index c83051473830..a521eaff21e8 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "SCSS-Stylesheet (Sass)", "description": "SCSS ist eine Sprache, die in CSS kompiliert wird", "postActions/openInEditor/description": "Öffnet styleSheet1.scss im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.en.json index 0f059d4cd46b..a5eee1f7e5cc 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.en.json @@ -3,4 +3,4 @@ "name": "SCSS Style Sheet (SASS)", "description": "SCSS is a language that compiles into CSS", "postActions/openInEditor/description": "Opens styleSheet1.scss in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.es.json index 86a29595ac9b..0934bd27fb24 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "Hoja de estilos SCSS (SASS)", "description": "SCSS es un lenguaje que se compila en CSS", "postActions/openInEditor/description": "Abre styleSheet1.scss en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.fr.json index eb3e007cb37e..d618703a03bd 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "Feuille de style SCSS (SASS)", "description": "SCSS est un langage qui se compile en CSS", "postActions/openInEditor/description": "Ouvre styleSheet1.scss dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.it.json index 8012d13d6a82..53fd3c1874ab 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "Foglio di stile SCSS (SASS)", "description": "SCSS è un linguaggio che viene compilato in CSS", "postActions/openInEditor/description": "Apre styleSheet1.scss nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ja.json index e075aaa82ba4..d69a2bef26cf 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "SCSS スタイル シート (SASS)", "description": "SCSS は CSS にコンパイルされる言語です。", "postActions/openInEditor/description": "エディターで styleSheet1.scss を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ko.json index cd84fb2a71e4..a64bdca16836 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "SCSS 스타일시트(SASS)", "description": "SCSS는 CSS로 컴파일되는 언어입니다.", "postActions/openInEditor/description": "편집기에서 styleSheet1.scss를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pl.json index 1bf22d26c895..06f9b21e9846 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "Arkusz stylów SCSS (SASS)", "description": "SCSS to język kompilowany na język CSS.", "postActions/openInEditor/description": "Otwiera plik styleSheet1.scss w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pt-BR.json index 5fa8e53ececd..e98b02a6628b 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "Folha de estilo SCSS (SASS)", "description": "SCSS é uma linguagem que compila em CSS", "postActions/openInEditor/description": "Abre styleSheet1.scss no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ru.json index 42c011e5ac7d..01866b18464f 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "Таблица стилей SCSS (Sass)", "description": "SCSS – это язык, компилируемый в CSS", "postActions/openInEditor/description": "Открывает styleSheet1.scss в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.tr.json index cd206097b846..34bf5f72f32d 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "SCSS Stil Sayfası (SASS)", "description": "SCSS, CSS'de derlenen bir dildir", "postActions/openInEditor/description": "StyleSheet1.scss’i düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hans.json index 560c4c8ad66d..c0a285de1449 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "SCSS 样式表(SASS)", "description": "SCSS 是可编译为 CSS 的一种语言", "postActions/openInEditor/description": "在编辑器中打开 styleSheet1.scss" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hant.json index 8f9bad58f486..a2da0b4620e2 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "SCSS 樣式表 (SASS)", "description": "SCSS 是編譯成 CSS 的語言", "postActions/openInEditor/description": "在編輯器中開啟 styleSheet1.scss" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.cs.json index 773ae4cac7c7..3274c2369f9c 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "Soubor TypeScriptu", "description": "Prázdný zdrojový soubor TypeScriptu", "postActions/openInEditor/description": "Otevře soubor file1.ts v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.de.json index 5d34bb987504..9b7aec0810be 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "TypeScript-Datei", "description": "Eine leere TypeScript-Quelldatei", "postActions/openInEditor/description": "Öffnet file1.ts im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.en.json index 6dae0d7480df..ac58bc2a225b 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.en.json @@ -3,4 +3,4 @@ "name": "TypeScript file", "description": "A blank TypeScript source file", "postActions/openInEditor/description": "Opens file1.ts in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.es.json index 23b0e6eb7a39..fa404bfdf197 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "Archivo TypeScript", "description": "Archivo de origen de TypeScript en blanco", "postActions/openInEditor/description": "Abre file1.ts en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.fr.json index 9831cfff7520..5ba39e0f0935 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "Fichier TypeScript", "description": "Fichier source TypeScript vide", "postActions/openInEditor/description": "Ouvre file1.ts dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.it.json index bc86db5205cb..03c3d95825ce 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "File TypeScript", "description": "File di origine TypeScript vuoto", "postActions/openInEditor/description": "Apre file1.ts nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ja.json index 557f4892f5a6..af85490305f4 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "TypeScript ファイル", "description": "空の TypeScript ソース ファイル", "postActions/openInEditor/description": "エディターで file1.ts を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ko.json index c98c674fd0d6..e92d7202c211 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "TypeScript 파일", "description": "빈 TypeScript 소스 파일", "postActions/openInEditor/description": "편집기에서 file1.ts를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pl.json index 2ff95d7293a1..15107f62d18a 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "Plik TypeScript", "description": "Pusty plik źródłowy TypeScript", "postActions/openInEditor/description": "Otwiera plik1.ts w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pt-BR.json index 241c109e900c..e2c68902680d 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "Arquivo TypeScript", "description": "Um arquivo fonte do TypeScript em branco", "postActions/openInEditor/description": "Abre file1.ts no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ru.json index e4fc402a12fb..dbc907f267ab 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "Файл TypeScript", "description": "Пустой исходный файл TypeScript", "postActions/openInEditor/description": "Открывает file1.ts в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.tr.json index 7c68235fc096..c56908da06f2 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "TypeScript dosyası", "description": "Boş bir TypeScript kaynak dosyası", "postActions/openInEditor/description": "File1.ts dosyasını düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hans.json index 5983d6165bb1..21b1120508df 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "TypeScript 文件", "description": "空白 TypeScript 源文件", "postActions/openInEditor/description": "在编辑器中打开 file1.ts" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hant.json index 04dc1326aee0..eb7d9dbd4f75 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "TypeScript 檔案", "description": "空白的 TypeScript 原始程式檔", "postActions/openInEditor/description": "在編輯器中開啟 file1.ts" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.cs.json index 128b672d89ea..3305b7024577 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.cs.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Vytvoření kontroleru s akcemi čtení/zápisu", "symbols/actions/displayName": "Přidat akce čtení/zápis", "postActions/openInEditor/description": "Otevře vytvořený kontroler v editoru" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.de.json index 88249e678123..dfaff3913729 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.de.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Controller mit Lese-/Schreibaktionen erstellen", "symbols/actions/displayName": "Read/Write-Aktionen hinzufügen", "postActions/openInEditor/description": "Öffnet den erstellten Controller im Editor." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.en.json index e2897e2b1fbe..6e2cfa9d1cbb 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.en.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Create controller with read/write actions", "symbols/actions/displayName": "Add Read/Write Actions", "postActions/openInEditor/description": "Opens the created controller in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.es.json index 9a6f6d9d0209..c0a405699865 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.es.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Crear controlador con acciones de lectura y escritura", "symbols/actions/displayName": "Agregar acciones de lectura y escritura", "postActions/openInEditor/description": "Abre el controlador creado en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.fr.json index b4f846899b53..e4fd807141da 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.fr.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Créer un contrôleur avec des actions de lecture/écriture", "symbols/actions/displayName": "Ajouter des actions de lecture/écriture", "postActions/openInEditor/description": "Ouvre le contrôleur créé dans l'éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.it.json index e4e9412a123c..fbdac58c52c1 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.it.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Crea controller con azioni di lettura/scrittura", "symbols/actions/displayName": "Aggiungi azioni di lettura/scrittura", "postActions/openInEditor/description": "Apre il controller creato nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ja.json index b7a8b90fd6ac..c58feab6d507 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ja.json @@ -6,4 +6,4 @@ "symbols/actions/description": "読み取り/書き込みアクションを使用してコントローラーを作成する", "symbols/actions/displayName": "読み取り/書き込みアクションを追加する", "postActions/openInEditor/description": "エディターで作成されたコントローラーを開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ko.json index 9425eeff198c..b0b65ce5a9b1 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ko.json @@ -6,4 +6,4 @@ "symbols/actions/description": "읽기/쓰기 작업이 포함된 컨트롤러 만들기", "symbols/actions/displayName": "읽기/쓰기 작업 추가", "postActions/openInEditor/description": "편집기에서 생성된 컨트롤러를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pl.json index e78f816b4086..eae8f2236b6b 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pl.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Utwórz kontroler z akcjami odczytu/zapisu", "symbols/actions/displayName": "Dodaj akcje odczytu/zapisu", "postActions/openInEditor/description": "Otwiera utworzony kontroler w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pt-BR.json index 0f04ca81f122..1a27f0cebcd8 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.pt-BR.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Criar um controlador com ações de leitura/gravação", "symbols/actions/displayName": "Adicionar Ações de Leitura/Gravação", "postActions/openInEditor/description": "Abre o controlador criado no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ru.json index e09b4525aaa0..455388370632 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.ru.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Создание контроллера с действиями чтения и записи", "symbols/actions/displayName": "Добавление действий чтения и записи", "postActions/openInEditor/description": "Открытие созданного контроллера в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.tr.json index 974428129b45..fcc056e23a3b 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.tr.json @@ -6,4 +6,4 @@ "symbols/actions/description": "okuma / yazma eylemleri olan denetleyici oluşturun", "symbols/actions/displayName": "Okuma / Yazma Eylemleri Ekle", "postActions/openInEditor/description": "Oluşturulan denetleyiciyi düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hans.json index 152da45a5518..aa75f1b9882a 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hans.json @@ -6,4 +6,4 @@ "symbols/actions/description": "使用读/写操作创建控制器", "symbols/actions/displayName": "添加读/写操作", "postActions/openInEditor/description": "在编辑器中打开创建的控制器" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hant.json index 992abf21c521..5246a92800a7 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/localize/templatestrings.zh-Hant.json @@ -6,4 +6,4 @@ "symbols/actions/description": "使用讀取/寫入動作建立控制器", "symbols/actions/displayName": "新增讀取/寫入動作", "postActions/openInEditor/description": "在編輯器中開啟建立的控制器" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.cs.json index cf7fcb80e145..773c5d078f48 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.cs.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Vytvoření kontroleru s akcemi čtení/zápisu", "symbols/actions/displayName": "Přidat akce čtení/zápis", "postActions/openInEditor/description": "Otevře vytvořený kontroler v editoru" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.de.json index ae6d2d9ebb9c..8c40134d524a 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.de.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Controller mit Lese-/Schreibaktionen erstellen", "symbols/actions/displayName": "Read/Write-Aktionen hinzufügen", "postActions/openInEditor/description": "Öffnet den erstellten Controller im Editor." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.en.json index f2afbbee0102..61861e90cd69 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.en.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Create controller with read/write actions", "symbols/actions/displayName": "Add Read/Write Actions", "postActions/openInEditor/description": "Opens the created controller in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.es.json index a1d5d0b47ae1..f8f30acedff5 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.es.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Crear controlador con acciones de lectura y escritura", "symbols/actions/displayName": "Agregar acciones de lectura y escritura", "postActions/openInEditor/description": "Abre el controlador creado en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.fr.json index cfab5b3b099a..3e44d7c80bbc 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.fr.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Créer un contrôleur avec des actions de lecture/écriture", "symbols/actions/displayName": "Ajouter des actions de lecture/écriture", "postActions/openInEditor/description": "Ouvre le contrôleur créé dans l'éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.it.json index 74887ea91000..71efee7700ea 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.it.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Crea controller con azioni di lettura/scrittura", "symbols/actions/displayName": "Aggiungi azioni di lettura/scrittura", "postActions/openInEditor/description": "Apre il controller creato nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ja.json index 0be69962d4b4..da993225493d 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ja.json @@ -6,4 +6,4 @@ "symbols/actions/description": "読み取り/書き込みアクションを使用してコントローラーを作成する", "symbols/actions/displayName": "読み取り/書き込みアクションを追加する", "postActions/openInEditor/description": "エディターで作成されたコントローラーを開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ko.json index 47c5a563178e..2ccd61f67a49 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ko.json @@ -6,4 +6,4 @@ "symbols/actions/description": "읽기/쓰기 작업이 포함된 컨트롤러 만들기", "symbols/actions/displayName": "읽기/쓰기 작업 추가", "postActions/openInEditor/description": "편집기에서 생성된 컨트롤러를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pl.json index 478eaddbb64a..2a25cff1920f 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pl.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Utwórz kontroler z akcjami odczytu/zapisu", "symbols/actions/displayName": "Dodaj akcje odczytu/zapisu", "postActions/openInEditor/description": "Otwiera utworzony kontroler w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pt-BR.json index dc4e41100489..3c86be21a201 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.pt-BR.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Criar um controlador com ações de leitura/gravação", "symbols/actions/displayName": "Adicionar Ações de Leitura/Gravação", "postActions/openInEditor/description": "Abre o controlador criado no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ru.json index e57c7c911844..f33715d5f57c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.ru.json @@ -6,4 +6,4 @@ "symbols/actions/description": "Создание контроллера с действиями чтения и записи", "symbols/actions/displayName": "Добавление действий чтения и записи", "postActions/openInEditor/description": "Открытие созданного контроллера в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.tr.json index 99d9822e6c07..44de7b59a99f 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.tr.json @@ -6,4 +6,4 @@ "symbols/actions/description": "okuma / yazma eylemleri olan denetleyici oluşturun", "symbols/actions/displayName": "Okuma / Yazma Eylemleri Ekle", "postActions/openInEditor/description": "Oluşturulan denetleyiciyi düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hans.json index 775bd6229a4a..df7666df1e0c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hans.json @@ -6,4 +6,4 @@ "symbols/actions/description": "使用读/写操作创建控制器", "symbols/actions/displayName": "添加读/写操作", "postActions/openInEditor/description": "在编辑器中打开创建的控制器" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hant.json index bb52e95aa272..b130371c1fc5 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/localize/templatestrings.zh-Hant.json @@ -6,4 +6,4 @@ "symbols/actions/description": "使用讀取/寫入動作建立控制器", "symbols/actions/displayName": "新增讀取/寫入動作", "postActions/openInEditor/description": "在編輯器中開啟建立的控制器" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.cs.json index d6f6c88701bf..98ec45bace93 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.cs.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "vytvoření stránky bez PageModel", "symbols/no-pagemodel/displayName": "Vyloučit PageModel", "postActions/openInEditor/description": "Otevře soubor Index.cshtml v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.de.json index 2ab0041c8f83..120e3addb859 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.de.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "Seite ohne PageModel erstellen", "symbols/no-pagemodel/displayName": "Seitenmodell ausschließen", "postActions/openInEditor/description": "Öffnet Index.cshtml im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.en.json index f2dd26df5dfd..64b64fabef10 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.en.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "create page without a PageModel", "symbols/no-pagemodel/displayName": "Exclude PageModel", "postActions/openInEditor/description": "Opens Index.cshtml in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.es.json index ab96b76ff486..ef6b39a2e969 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.es.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "crear una página sin PageModel", "symbols/no-pagemodel/displayName": "Excluir PageModel", "postActions/openInEditor/description": "Abre Index.cshtml en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.fr.json index 709e1cb3bf09..4cdd72def9d2 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.fr.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "créer une page sans PageModel", "symbols/no-pagemodel/displayName": "Exclude PageModel", "postActions/openInEditor/description": "Ouvre Index.cshtml dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.it.json index aabeabfcdf37..2e4b7a8d2b28 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.it.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "crea una pagina senza PageModel", "symbols/no-pagemodel/displayName": "Escludi PageModel", "postActions/openInEditor/description": "Apre Index.cshtml nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ja.json index d320c1ff7e70..a01c61350721 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ja.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "PageModel なしでページを作成する", "symbols/no-pagemodel/displayName": "PageModel を除外する", "postActions/openInEditor/description": "エディターで Index.cshtml を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ko.json index e5c761dc1b5d..ec450e866b73 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ko.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "PageModel 없이 페이지 만들기", "symbols/no-pagemodel/displayName": "PageModel 제외", "postActions/openInEditor/description": "편집기에서 Index.cshtml을 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pl.json index 4ccf56937374..5cf2704d57ea 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pl.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "tworzenie strony bez modelu PageModel", "symbols/no-pagemodel/displayName": "Wyklucz moduł PageModel", "postActions/openInEditor/description": "Otwiera plik Index.cshtml w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pt-BR.json index 3d42b117a46b..12e41c4e40d6 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.pt-BR.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "criar página sem um PageModel", "symbols/no-pagemodel/displayName": "Excluir PageModel", "postActions/openInEditor/description": "Abre Index.cshtml no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ru.json index 3145f2144a0d..225732f05737 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.ru.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "создать страницу без PageModel", "symbols/no-pagemodel/displayName": "Исключить PageModel", "postActions/openInEditor/description": "Открывает Index.cshtml в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.tr.json index 35c3c0b4dff4..0c0f45ec4843 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.tr.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "PageModel olmadan sayfa oluşturma", "symbols/no-pagemodel/displayName": "PageModel'i Dışla", "postActions/openInEditor/description": "Düzenleyicide Index.cshtml’yi açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hans.json index 9d7efa25f06d..81fc3f23c2e4 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hans.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "创建不带 PageModel 的页面", "symbols/no-pagemodel/displayName": "排除 PageModel", "postActions/openInEditor/description": "在编辑器中打开 Index.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hant.json index cf20a14d1514..3c7242e5d2b6 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/localize/templatestrings.zh-Hant.json @@ -6,4 +6,4 @@ "symbols/no-pagemodel/description": "建立不含 PageModel 的頁面", "symbols/no-pagemodel/displayName": "排除 PageModel", "postActions/openInEditor/description": "在編輯器中開啟 Index.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.de.json index 6641b9ca4d74..526a68e01406 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "Razor-Ansicht", "description": "Eine leere Razor-Ansicht", "postActions/openInEditor/description": "Öffnet die erstellte Ansicht im Editor." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.fr.json index 0bfd38d91e7f..911dd3327d72 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "Vue Razor", "description": "Une vue Razor vide", "postActions/openInEditor/description": "Ouvre la vue créée dans l'éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ja.json index 556ff5d48312..4ed92de2ceae 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "Razor ビュー", "description": "空の Razor ビュー", "postActions/openInEditor/description": "エディターで作成されたビューを開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ru.json index 40bfa1ccb4ef..ab3627cc5afc 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "Представление Razor", "description": "Пустое представление Razor", "postActions/openInEditor/description": "Открытие созданного представления в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hans.json index cf1d0bd7e735..ca0c4485fec4 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "Razor 视图", "description": "空的 Razor 视图", "postActions/openInEditor/description": "在编辑器中打开创建的视图" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.cs.json index 341401f12fcd..6bcfe6f2e95b 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.cs.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Stránka MVC ViewStart", "postActions/openInEditor/description": "Otevře soubor _ViewStart.cshtml v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.de.json index 515a1671f405..8c4513d85a39 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.de.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Eine MVC ViewStartseite", "postActions/openInEditor/description": "Öffnet _ViewStart.cshtml im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.en.json index e52de1ae6a43..300248ef32e9 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.en.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "An MVC ViewStart Page", "postActions/openInEditor/description": "Opens _ViewStart.cshtml in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.es.json index f75601534dbe..e7e3760969f4 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.es.json @@ -3,4 +3,4 @@ "name": "MVC de ViewStart", "description": "Una página MVC de ViewStart", "postActions/openInEditor/description": "Abre _ViewStart.cshtml en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.fr.json index 7f6f567d97c5..b990617b603f 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.fr.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Page ViewStart MVC", "postActions/openInEditor/description": "Ouvre _ViewStart.cshtml dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.it.json index 7970b5c6f373..1b61c6b0e808 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.it.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Pagina ViewStart di MVC", "postActions/openInEditor/description": "Apre _ViewStart.cshtml nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ja.json index b83b8074ed51..7c57a1948e1d 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ja.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "MVC ViewStart ページ", "postActions/openInEditor/description": "エディターで _ViewStart.cshtml を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ko.json index 8464c9df87cf..e0f41ad553aa 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ko.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "MVC ViewStart 페이지", "postActions/openInEditor/description": "편집기에서 ViewStart.cshtml을 엽니다(_V)" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pl.json index 2d1822787ad6..f3b59e5e039c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pl.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Strona MVC ViewStart", "postActions/openInEditor/description": "Otwiera plik _ViewStart.cshtml w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pt-BR.json index 6887ae0aa974..a138cf52071a 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.pt-BR.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Uma página MVC ViewStart", "postActions/openInEditor/description": "Abre _ViewStart.cshtml no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ru.json index d006c2c3309c..a33df6527fca 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.ru.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "Страница MVC ViewStart", "postActions/openInEditor/description": "Открывает _ViewStart.cshtml в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.tr.json index 63b952169c6c..e655d378cc21 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.tr.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "MVC ViewStart Sayfası", "postActions/openInEditor/description": "_ViewStart.cshtml’yi düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hans.json index d0eb912fad7a..2bb7fb5005ad 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hans.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "MVC ViewStart 页面", "postActions/openInEditor/description": "在编辑器中打开 _ViewStart.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hant.json index 1a651b490f0c..31f96af7db19 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/localize/templatestrings.zh-Hant.json @@ -3,4 +3,4 @@ "name": "MVC ViewStart", "description": "MVC ViewStart 頁面", "postActions/openInEditor/description": "在編輯器中開啟 _ViewStart.cshtml" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.cs.json index d477debb99cc..dba306dd4db5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.cs.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Určuje, jestli se má název projektu zkombinovat s TLD .dev.localhost v adrese URL aplikace pro místní vývoj, například https://myapp.dev.localhost:12345.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.de.json index 476bafc72f2d..b07cdc29ade5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.de.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Gibt an, ob der Projektname mit der .dev.localhost-TLD in der Anwendungs-URL für die lokale Entwicklung kombiniert werden soll, z. B. https://myapp.dev.localhost:12345.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.en.json index cfe29a67cfd1..2ffffc0b574e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.en.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.es.json index 11b5368ab36e..ca2551ae5811 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.es.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Indica si se debe combinar el nombre del proyecto con el TLD .dev.localhost en la dirección URL de la aplicación para el desarrollo local, por ejemplo, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.fr.json index 797ad4a6ed53..f60391f68dd3 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.fr.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Indique s’il faut combiner le nom du projet avec le TLD .dev.localhost dans l’URL de l’application pour le développement local, par exemple https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.it.json index 780697618c53..3cc3a30b21c1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.it.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Indicare se combinare il nome del progetto con il TLD .dev.localhost nell'URL dell'applicazione per lo sviluppo in locale, ad esempio https://myapp.dev.localhost:12345.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ja.json index 48313499ca6c..518fc5845fd6 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ja.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "ローカル開発用のアプリケーション URL 内で、プロジェクト名を .dev.localhost TLD と組み合わせるかどうか (例: https://myapp.dev.localhost:12345)。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ko.json index 45d1d3a92025..0694ad4c16cc 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ko.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "로컬 개발을 위한 애플리케이션 URL에서 프로젝트 이름과 .dev.localhost TLD를 결합할지 여부, 예를 들어 https://myapp.dev.localhost:12345.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pl.json index 3959c30ef89c..2f066461d636 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pl.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Określa, czy połączyć nazwę projektu z domeną najwyższego poziomu .dev.localhost w adresie URL aplikacji na potrzeby programowania lokalnego, np. https://myapp.dev.localhost:12345.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json index d4ee2ecb284c..6e4eedd859bc 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Se deseja combinar o nome do projeto com o TLD .dev.localhost na URL do aplicativo para desenvolvimento local, por exemplo, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executa 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ru.json index 6e0180450388..6d83de21bb73 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.ru.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Следует ли объединять имя проекта с TLD .dev.localhost в URL-адресе приложения для локальной разработки, например, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.tr.json index 3b29c1b86e43..2bca6772387c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.tr.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "Yerel geliştirme için uygulama URL'sinde proje adını .dev.localhost TLD ile birleştirip birleştirmeyeceğinizi seçin, örneğin https://myapp.dev.localhost:12345.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 5b53dce6fb0d..eb986742989b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "是否在应用程序 URL 中将项目名称与 .dev.localhost TLD 合并以用于本地开发,例如 https://myapp.dev.localhost:12345。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json index 2d0826eac487..1cb6a16e26a1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -43,4 +43,4 @@ "symbols/LocalhostTld/description": "是否要在本機開發的應用程式 URL 中將專案名稱與 .dev.localhost TLD 合併,例如 https://myapp.dev.localhost:12345。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.cs.json index 36be0caac277..8069bf7c4909 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.cs.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore", "postActions/open-file/description": "Otevře soubor Readme.txt v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.de.json index d2f753764742..049f7cbbfbf1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.de.json @@ -41,4 +41,4 @@ "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen", "postActions/open-file/description": "Öffnet Readme.txt im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.en.json index 50f0c4558336..36fa5e417dfe 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.en.json @@ -42,4 +42,4 @@ "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'", "postActions/open-file/description": "Opens Readme.txt in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.es.json index fa6cd1a5470f..dcac346fb472 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.es.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"", "postActions/open-file/description": "Abre Readme.txt en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.fr.json index bc3f42bbe4b6..f110d5911155 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.fr.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »", "postActions/open-file/description": "Ouvre Readme.txt dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.it.json index a9eb1f558db9..fd2246865689 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.it.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'", "postActions/open-file/description": "Apre Readme.txt nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ja.json index d640d62ad541..53ddf99b8c0a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ja.json @@ -41,4 +41,4 @@ "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する", "postActions/open-file/description": "エディターで Readme.txt を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ko.json index 02af4248c448..7316c83e0220 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ko.json @@ -41,4 +41,4 @@ "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행", "postActions/open-file/description": "편집기에서 Readme.txt를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pl.json index 48555065d20c..7ce5f42612a2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pl.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"", "postActions/open-file/description": "Otwiera plik Readme.txt w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pt-BR.json index 6da2624da0b7..52da8e8f4863 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'", "postActions/open-file/description": "Abre Readme.txt no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ru.json index 3e109861f609..a9e986474c83 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.ru.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"", "postActions/open-file/description": "Открывает Readme.txt в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.tr.json index 4b27edcfb186..eebe2c3e065c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.tr.json @@ -41,4 +41,4 @@ "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır", "postActions/open-file/description": "Benioku.txt dosyasını düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 14e02aa9ceec..4bf7eaec1a58 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -41,4 +41,4 @@ "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"", "postActions/open-file/description": "在编辑器中打开 Readme.txt" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hant.json index cae0fd5e7ac3..8ec169da3253 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -41,4 +41,4 @@ "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'", "postActions/open-file/description": "在編輯器中開啟 Readme.txt" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.cs.json index b7f632b448bc..c9a2091cfdff 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.cs.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Určuje, jestli se má název projektu zkombinovat s TLD .dev.localhost v adrese URL aplikace pro místní vývoj, například https://myapp.dev.localhost:12345.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.de.json index d22b6b97def3..c7cb69b1f95d 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.de.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Gibt an, ob der Projektname mit der .dev.localhost-TLD in der Anwendungs-URL für die lokale Entwicklung kombiniert werden soll, z. B. https://myapp.dev.localhost:12345.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.en.json index b9b546af4541..2681a2e08ccd 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.en.json @@ -18,4 +18,4 @@ "symbols/LocalhostTld/description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.es.json index a4ba6131186b..9272830b6460 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.es.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Indica si se debe combinar el nombre del proyecto con el TLD .dev.localhost en la dirección URL de la aplicación para el desarrollo local, por ejemplo, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.fr.json index 27ffa4d2166e..9b01443a26bc 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.fr.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Indique s’il faut combiner le nom du projet avec le TLD .dev.localhost dans l’URL de l’application pour le développement local, par exemple https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.it.json index 43e99c6b0a19..4bf689991807 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.it.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Indicare se combinare il nome del progetto con il TLD .dev.localhost nell'URL dell'applicazione per lo sviluppo in locale, ad esempio https://myapp.dev.localhost:12345.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ja.json index 31e90703e15d..2b2541b938c3 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ja.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "ローカル開発用のアプリケーション URL 内で、プロジェクト名を .dev.localhost TLD と組み合わせるかどうか (例: https://myapp.dev.localhost:12345)。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ko.json index 4bcef901945f..a0cb0ee4f612 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ko.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "로컬 개발을 위한 애플리케이션 URL에서 프로젝트 이름과 .dev.localhost TLD를 결합할지 여부, 예를 들어 https://myapp.dev.localhost:12345.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pl.json index 8fd9b308b4b1..90bb31580d13 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pl.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Określa, czy połączyć nazwę projektu z domeną najwyższego poziomu .dev.localhost w adresie URL aplikacji na potrzeby programowania lokalnego, np. https://myapp.dev.localhost:12345.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json index 261c8a536f3a..6507f653bc31 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Se deseja combinar o nome do projeto com o TLD .dev.localhost na URL do aplicativo para desenvolvimento local, por exemplo, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ru.json index 35c1bf7df456..6122a9803f98 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.ru.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Следует ли объединять имя проекта с TLD .dev.localhost в URL-адресе приложения для локальной разработки, например, https://myapp.dev.localhost:12345.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.tr.json index c71032d73613..299ef18175b0 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.tr.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "Yerel geliştirme için uygulama URL'sinde proje adını .dev.localhost TLD ile birleştirip birleştirmeyeceğinizi seçin, örneğin https://myapp.dev.localhost:12345.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 041a939d1dfc..dd034ba1f4fe 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "是否在应用程序 URL 中将项目名称与 .dev.localhost TLD 合并以用于本地开发,例如 https://myapp.dev.localhost:12345。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json index ff1ba76cfab2..9a08ab8e2bc2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -17,4 +17,4 @@ "symbols/LocalhostTld/description": "是否要在本機開發的應用程式 URL 中將專案名稱與 .dev.localhost TLD 合併,例如 https://myapp.dev.localhost:12345。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.cs.json index 7fc089edc3f4..7f60730cd4a0 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.cs.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Určuje, jestli se má protokol HTTPS vypnout. Tato možnost platí jenom v případě, že se pro --auth nepoužívají Individual, IndividualB2C, SingleOrg ani MultiOrg.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.de.json index b7d29c350c4b..37910d04d35f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.de.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Ob HTTPS deaktiviert werden soll. Diese Option gilt nur, wenn Individual, IndividualB2C, SingleOrg oder MultiOrg nicht für --auth verwendet werden.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.en.json index e162c1f71e53..26ae4ccf3d39 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.en.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.es.json index a9c46a0e2658..2a772e71edca 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.es.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Si se va a desactivar HTTPS. Esta opción solo se aplica si Individual, IndividualB2C, SingleOrg o MultiOrg no se usan para --auth.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.fr.json index 0b17348dab49..1cb77685f2a5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.fr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indique s’il faut désactiver HTTPS. Cette option s’applique uniquement si Individual, IndividualB2C, SingleOrg ou MultiOrg ne sont pas utilisés pour --auth.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.it.json index c25f62ff8b47..15a1916b3797 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.it.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indica se disattivare HTTPS. Questa opzione si applica solo se Individual, IndividualB2C, SingleOrg o MultiOrg non vengono usati per --auth.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ja.json index c65e052530a4..31fb68594607 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ja.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS をオフにするかどうか。このオプションは、Individual、IndividualB2C、SingleOrg、または MultiOrg が --auth に使用されていない場合にのみ適用されます。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ko.json index 8fa794cd45d1..6d1d1c2a03bf 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ko.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS를 끌지 여부입니다. 이 옵션은 Individual, IndividualB2C, SingleOrg 또는 MultiOrg가 --auth에 사용되지 않는 경우에만 적용됩니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pl.json index 0ca01b1810ea..0514cec97d1a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pl.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Określa, czy wyłączyć protokół HTTPS. Ta opcja ma zastosowanie tylko wtedy, gdy dla uwierzytelniania --auth nie są używane elementy Individual, IndividualB2C, SingleOrg lub MultiOrg.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json index ce09e3175adf..27ecf158ebbb 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Se o HTTPS deve ser desativado. Essa opção se aplica somente se Individual, IndividualB2C, SingleOrg ou MultiOrg não forem usados para --auth.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ru.json index 1ff4a9d481b8..ee0dacfaea0c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.ru.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Следует ли отключить HTTPS. Этот параметр применяется, только если для --auth не используются Individual, IndividualB2C, SingleOrg или MultiOrg.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.tr.json index 2fb58161fb3d..fe1f51b69ea7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.tr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS'nin kapatılıp kapatılmayacağı. Bu seçenek yalnızca Bireysel, IndividualB2C, SingleOrg veya MultiOrg -- auth için kullanılmazsa geçerlidir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json index 0da106415abd..bdc007a2158e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否禁用 HTTPS。仅当 Individual、IndividualB2C、SingleOrg 或 MultiOrg 不用于 --auth 时,此选项才适用。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json index dc22a6d0d3b8..15eafa5a41aa 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否要關閉 HTTPS。只有當 Individual、IndividualB2C、SingleOrg 或 MultiOrg 未用於 --auth 時,才適用此選項。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.cs.json index d1cb0248d40b..3ab529e9bb01 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.cs.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Určuje, jestli se má u projektu povolit publikování jako native AOT.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.de.json index d9bc5dd4a985..8680369aaf0b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.de.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Gibt an, ob das Projekt für die Veröffentlichung als native AOT aktiviert werden soll.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.en.json index 78880afc9fb0..8a7b46b2bfee 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.en.json @@ -15,4 +15,4 @@ "symbols/NativeAot/description": "Whether to enable the project for publishing as native AOT.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.es.json index eb1f34934d81..141eb9a08352 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.es.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Indica si se debe habilitar el proyecto para publicarlo como native AOT.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.fr.json index e070761668a7..c7fd46a38c3c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.fr.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Indique si le projet doit être activé pour la publication en tant que native AOT.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.it.json index c03dde69890d..763240ce44de 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.it.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Se abilitare il progetto per la pubblicazione come native AOT.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ja.json index 376116862224..b12392624482 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ja.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "プロジェクトを native AOT として発行できるようにするかどうかを指定します。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ko.json index 470fa9c26ceb..5f16276508ab 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ko.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "프로젝트를 native AOT로 게시할 수 있도록 설정할지 여부입니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pl.json index b470f604c3da..b2e225beeced 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pl.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Określa, czy włączyć publikowanie projektu jako native AOT.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pt-BR.json index eabee0e25176..1bafea77a384 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Se o projeto deve ser habilitado para publicação como native AOT.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ru.json index 08cb6c2121b9..f39713c82bd9 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.ru.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Включить ли проект для публикации как native AOT.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.tr.json index 737d6dadfa90..41febf600a6a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.tr.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "Projenin native AOT olarak yayımlama için etkinleştirilip etkinleştirilmeyeceğini belirtir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 356ffbe13b61..31aba09128f9 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "是否启用将项目以 native AOT 发布。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hant.json index 94a8e97a08cd..3c01ccead2bf 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -14,4 +14,4 @@ "symbols/NativeAot/description": "是否要啟用專案以 native AOT 發佈。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.cs.json index 95bfccd77708..48154c2b100b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.cs.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore", "postActions/openPageInEditor/description": "Otevře soubor areas/MyFeature/Pages/Page1.cshtml v editoru.", "postActions/openComponentInEditor/description": "Otevře soubor Component1.razor v editoru." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.de.json index 3a80f829366d..b680e8c7cf84 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.de.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen", "postActions/openPageInEditor/description": "Öffnet Areas/MyFeature/Pages/Page1.cshtml im Editor", "postActions/openComponentInEditor/description": "Öffnet Component1.razor im Editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.en.json index fb4b549c7fb9..8a78267eba16 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.en.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'", "postActions/openPageInEditor/description": "Opens Areas/MyFeature/Pages/Page1.cshtml in the editor", "postActions/openComponentInEditor/description": "Opens Component1.razor in the editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.es.json index 5e4827f6ae57..398c214deca8 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.es.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"", "postActions/openPageInEditor/description": "Abre Areas/MyFeature/Pages/Page1.cshtml en el editor", "postActions/openComponentInEditor/description": "Abre Component1.razor en el editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.fr.json index d88cc35a02d3..24558ff4c0df 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.fr.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »", "postActions/openPageInEditor/description": "Ouvre Areas/MyFeature/Pages/Page1.cshtml dans l’éditeur", "postActions/openComponentInEditor/description": "Ouvre Component1.razor dans l’éditeur" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.it.json index b3c95cbe6ccf..59cd19d5401d 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.it.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'", "postActions/openPageInEditor/description": "Apre Areas/MyFeature/Pages/Page1.cshtml nell'editor", "postActions/openComponentInEditor/description": "Apre Component1.razor nell'editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ja.json index 51984a88650e..178f608863b9 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ja.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する", "postActions/openPageInEditor/description": "エディターで Areas/MyFeature/Pages/Page1.cshtml を開きます", "postActions/openComponentInEditor/description": "エディターで Component1.razor を開きます" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ko.json index c4fb2aac24c3..bbb430a5d8e2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ko.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행", "postActions/openPageInEditor/description": "편집기에서 Areas/MyFeature/Pages/Page1.cshtml을 엽니다.", "postActions/openComponentInEditor/description": "편집기에서 Component1.razor를 엽니다." -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pl.json index 63e3b8eeb641..51be75761c59 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pl.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"", "postActions/openPageInEditor/description": "Otwiera plik Areas/MyFeature/Pages/Page1.cshtml w edytorze", "postActions/openComponentInEditor/description": "Otwiera plik Component1.razor w edytorze" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pt-BR.json index 4f3c8c6625c3..e80247ddc0d0 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'", "postActions/openPageInEditor/description": "Abre Areas/MyFeature/Pages/Page1.cshtml no editor", "postActions/openComponentInEditor/description": "Abre Component1.razor no editor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ru.json index d96b344b7aec..ecac28b0f916 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.ru.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"", "postActions/openPageInEditor/description": "Открывает Areas/MyFeature/Pages/Page1.cshtml в редакторе", "postActions/openComponentInEditor/description": "Открывает Component1.razor в редакторе" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.tr.json index 2e1eeb7e757e..6435d38df6de 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.tr.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır", "postActions/openPageInEditor/description": "Düzenleyicide Areas/MyFeature/Pages/Page1.cshtml dosyasını açar", "postActions/openComponentInEditor/description": "Component1.razor'ı düzenleyicide açar" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hans.json index df84b8ddbe99..3468224f2f17 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"", "postActions/openPageInEditor/description": "在编辑器中打开 Areas/MyFeature/Pages/Page1.cshtml", "postActions/openComponentInEditor/description": "在编辑器中打开 Component1.razor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hant.json index 0c5c1e7a355b..c5dc6e7fd761 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -11,4 +11,4 @@ "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'", "postActions/openPageInEditor/description": "在編輯器中開啟 Areas/MyFeature/Pages/Page1.cshtml", "postActions/openComponentInEditor/description": "在編輯器中開啟 Component1.razor" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.cs.json index 5cddc2878e0c..d80d6f9d29da 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.cs.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Určuje, jestli se má místo příkazů nejvyšší úrovně generovat explicitní třída Program a metoda Main.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.de.json index 40edda2c33da..9b778be6df2d 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.de.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Gibt an, ob anstelle von Anweisungen der obersten Ebene eine explizite Programmklasse und eine Main-Methode generiert werden soll.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.en.json index 575b0c68a0a7..c1ca1d2e0074 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.en.json @@ -39,4 +39,4 @@ "symbols/UseProgramMain/description": "Whether to generate an explicit Program class and Main method instead of top-level statements.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.es.json index 9f529b6ee6d6..2fdd4bbe5eb0 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.es.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indica si se debe generar una clase Program explícita y un método Main en lugar de instrucciones de nivel superior.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.fr.json index a375f4295345..d6fa3873b88b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.fr.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indique s’il faut générer une classe Programme explicite et une méthode Main au lieu d’instructions de niveau supérieur.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.it.json index d06e5aa91a7d..a5df2a8f6e8c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.it.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indica se generare una classe Program esplicita e un metodo Main anziché istruzioni di primo livello.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ja.json index 22854d7ba72e..8f9caabd397d 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ja.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "最上位レベルのステートメントではなく、明示的な Program クラスと Main メソッドを生成するかどうか。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ko.json index 67911df37148..6cb9ed7a3b69 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ko.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "최상위 문 대신 명시적 Program 클래스 및 Main 메서드를 생성할지 여부입니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pl.json index ee6c9bd6e6d4..23ff653d7e76 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pl.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Określa, czy wygenerować jawną klasę Program i metodę Main zamiast instrukcji najwyższego poziomu.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json index cb3ef4ab86c6..c39ad38a99df 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Se deve gerar uma classe de Programa explícita e um método principal em vez de instruções de nível superior.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ru.json index 13c6388a8f39..01bcec22a356 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.ru.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Следует ли создавать явный класс Program и метод Main вместо операторов верхнего уровня.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.tr.json index bc8af3c83f8b..1f580f995cb2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.tr.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Üst düzey deyimler yerine açık bir Program sınıfı ve Ana yöntem oluşturup oluşturulmayacağını belirtir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 4cd1d3f21331..186222ebd82e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "是否生成显式程序类和主方法,而不是顶级语句。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json index b3b2bcba174f..c60094dc9457 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "是否要產生明確的 Program 類別和 Main 方法,而非最上層語句。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.cs.json index 33fc8c20d868..9a9cb47b0cb3 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.cs.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Určuje, jestli se má místo příkazů nejvyšší úrovně generovat explicitní třída Program a metoda Main.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.de.json index 3b59be7db364..69f4a48e29f2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.de.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Gibt an, ob anstelle von Anweisungen der obersten Ebene eine explizite Programmklasse und eine Main-Methode generiert werden soll.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.en.json index f129b98378e4..701903e81a0a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.en.json @@ -39,4 +39,4 @@ "symbols/UseProgramMain/description": "Whether to generate an explicit Program class and Main method instead of top-level statements.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.es.json index 5cb0ed2675e2..38a515c32406 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.es.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indica si se debe generar una clase Program explícita y un método Main en lugar de instrucciones de nivel superior.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.fr.json index 95c4f078e0ee..0cb3eb035bd3 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.fr.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indique s’il faut générer une classe Programme explicite et une méthode Main au lieu d’instructions de niveau supérieur.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.it.json index 39092897480b..0d2c6a0e94d7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.it.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Indica se generare una classe Program esplicita e un metodo Main anziché istruzioni di primo livello.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ja.json index 6b06b892e239..fc0f8821b7c5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ja.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "最上位レベルのステートメントではなく、明示的な Program クラスと Main メソッドを生成するかどうか。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ko.json index ab11b2d835b5..ff7bde42ba0b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ko.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "최상위 문 대신 명시적 Program 클래스 및 Main 메서드를 생성할지 여부입니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pl.json index 7863cc6a0f01..579efe300221 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pl.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Określa, czy wygenerować jawną klasę Program i metodę Main zamiast instrukcji najwyższego poziomu.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json index 823b1d54ac1c..402712727297 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Se deve gerar uma classe de Programa explícita e um método principal em vez de instruções de nível superior.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ru.json index 572a03ba1e64..4950d4016b8c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.ru.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Следует ли создавать явный класс Program и метод Main вместо операторов верхнего уровня.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.tr.json index 3b487d03ee93..105e9c680f8a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.tr.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "Üst düzey deyimler yerine açık bir Program sınıfı ve Ana yöntem oluşturup oluşturulmayacağını belirtir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json index d54c8a4b0106..53cd51919438 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "是否生成显式程序类和主方法,而不是顶级语句。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json index e13ef16507e8..4cd048f5973c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -38,4 +38,4 @@ "symbols/UseProgramMain/description": "是否要產生明確的 Program 類別和 Main 方法,而非最上層語句。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.cs.json index 5963c6bd4955..6b5643b74443 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.cs.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Určuje, jestli se má protokol HTTPS vypnout. Tato možnost platí jenom v případě, že se pro --auth nepoužívají Individual, IndividualB2C, SingleOrg ani MultiOrg.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.de.json index ae54e2681525..117234b0e551 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.de.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Ob HTTPS deaktiviert werden soll. Diese Option gilt nur, wenn Individual, IndividualB2C, SingleOrg oder MultiOrg nicht für --auth verwendet werden.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.en.json index c1b4b27cc6cc..ed6bdec5c069 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.en.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.es.json index 0bcdc45e9711..34a309e06b35 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.es.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Si se va a desactivar HTTPS. Esta opción solo se aplica si Individual, IndividualB2C, SingleOrg o MultiOrg no se usan para --auth.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.fr.json index d4ca352d499e..6f0f6f1536cb 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.fr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indique s’il faut désactiver HTTPS. Cette option s’applique uniquement si Individual, IndividualB2C, SingleOrg ou MultiOrg ne sont pas utilisés pour --auth.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.it.json index a29d400bd1b1..00e58138efd7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.it.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indica se disattivare HTTPS. Questa opzione si applica solo se Individual, IndividualB2C, SingleOrg o MultiOrg non vengono usati per --auth.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ja.json index 011458fd677e..0ff620d60cec 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ja.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS をオフにするかどうか。このオプションは、Individual、IndividualB2C、SingleOrg、または MultiOrg が --auth に使用されていない場合にのみ適用されます。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ko.json index e8ff8352ad65..6a4876ff0188 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ko.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS를 끌지 여부입니다. 이 옵션은 Individual, IndividualB2C, SingleOrg 또는 MultiOrg가 --auth에 사용되지 않는 경우에만 적용됩니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pl.json index ac5a92f2fe22..d6aa7b92fe80 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pl.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Określa, czy wyłączyć protokół HTTPS. Ta opcja ma zastosowanie tylko wtedy, gdy dla uwierzytelniania --auth nie są używane elementy Individual, IndividualB2C, SingleOrg lub MultiOrg.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json index fa2fa1521dd7..af5f20537852 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.pt-BR.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Se o HTTPS deve ser desativado. Essa opção se aplica somente se Individual, IndividualB2C, SingleOrg ou MultiOrg não forem usados para --auth.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ru.json index d6b65d2508dd..7d429e880beb 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.ru.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Следует ли отключить HTTPS. Этот параметр применяется, только если для --auth не используются Individual, IndividualB2C, SingleOrg или MultiOrg.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.tr.json index b9399a3443b3..7b17f4a74e97 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.tr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS'nin kapatılıp kapatılmayacağı. Bu seçenek yalnızca Bireysel, IndividualB2C, SingleOrg veya MultiOrg -- auth için kullanılmazsa geçerlidir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json index be5dabd89f4b..bd5fc41cefc9 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否禁用 HTTPS。仅当 Individual、IndividualB2C、SingleOrg 或 MultiOrg 不用于 --auth 时,此选项才适用。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json index 64fec7cdbdcb..e11914d2235a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否要關閉 HTTPS。只有當 Individual、IndividualB2C、SingleOrg 或 MultiOrg 未用於 --auth 時,才適用此選項。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.cs.json index 48bf327bb04b..a602d8b66e03 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.cs.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Určuje, jestli se místo minimálních rozhraní API mají používat kontrolery. Tato možnost překoná hodnotu zadanou parametrem --minimal.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.de.json index d83bc339e018..ac99ac4abb48 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.de.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Gibt an, ob Controller anstelle von minimalen APIs verwendet werden sollen. Diese Option überschreibt den durch \"--minimal\" angegebenen Wert.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.en.json index 060fcfe6ab2d..4383693bc546 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.en.json @@ -37,4 +37,4 @@ "symbols/UseControllers/description": "Whether to use controllers instead of minimal APIs. This option overides the value specified by --minimal.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.es.json index ff596c49b3ae..83eeb3ae1e41 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.es.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Si utilizar controladores en lugar de API mínimas. Esta opción sustituye al valor especificado por --minimalista.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.fr.json index c599ae54b35e..358989991b20 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.fr.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Indique s’il faut utiliser des contrôleurs plutôt que des API minimales. Cette option dépasse la valeur spécifiée par --minimal.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.it.json index 8f0d1e7d3661..aa7b56f131ae 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.it.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Indica se usare i controller anziché le API minime. Questa opzione sostituisce il valore specificato da --minimal.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ja.json index 3f5ea9851a9e..8f9dfe9a61d7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ja.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "最小限の API ではなくコントローラーを使用するかどうかを指定します。このオプションは --minimal の指定値よりも優先されます。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ko.json index 83541ef0c48d..13973ca6ed70 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ko.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "최소 API 대신 컨트롤러를 사용할지 여부입니다. 이 옵션은 --minimal로 지정된 값을 재정의합니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pl.json index 7c3b0b5b9384..0ec9870d7c54 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pl.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Określa, czy używać kontrolerów zamiast minimalnych interfejsów API. Ta opcja przesłania wartość określoną przez parametr --minimal.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pt-BR.json index d23ad0dced78..0aa84a9524ef 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Se os controles devem ser usados em vez das APIs mínimas. Esta opção substitui o valor especificado por --minimal.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ru.json index ac24608e3747..f9393965129d 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.ru.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Следует ли использовать контроллеры вместо минимальных API? Этот параметр превышает значение, заданное минимальным параметром --minimal.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.tr.json index 37c1cfee753f..390781a3e05f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.tr.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "Minimal API yerine denetleyicileri kullanma seçimi. Bu seçenek -- minimal tarafından belirtilen değeri geçersiz kılar.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hans.json index e34d95ebb4eb..730a4679cc30 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "是否使用控制器而不是最小 API。此选项替代指定的值,即“最小”。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hant.json index 48bc9b4ead8a..d20d4937ff41 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -36,4 +36,4 @@ "symbols/UseControllers/description": "是否要使用控制器,而不是最小 API。此選項會覆寫由 --minimal 指定的值。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.cs.json index e251979ccde5..cd686b984d27 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.cs.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Určuje, jestli se má vypnout protokol HTTPS.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.de.json index 1628cbb4b18a..6dfa6a773f9f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.de.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Ob HTTPS deaktiviert werden soll.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.en.json index f38b028df0e7..04dbf0c01ec5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.en.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Whether to turn off HTTPS.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.es.json index 1786691cc3e3..78e5d3ea74b0 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.es.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Si se va a desactivar HTTPS.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.fr.json index 9a303fea9a3d..6389b3939d04 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.fr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indique s’il faut désactiver HTTPS.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.it.json index 84ec2f49a201..970eb598a6c1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.it.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Indica se disattivare HTTPS.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ja.json index d01bc34d9c3a..5223c1c61090 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ja.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS をオフにするかどうか。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ko.json index 2edbc8e1138b..e8ea06770676 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ko.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS를 끌지 여부입니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pl.json index 7660c499e3fd..b1c4f26d7278 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pl.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Określa, czy wyłączyć protokół HTTPS.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pt-BR.json index 2e836986b80b..a3f8a81e05e1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.pt-BR.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Se o HTTPS deve ser desativado.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ru.json index 079a0854790e..b3f8c0db60c7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.ru.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "Следует ли отключить HTTPS.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.tr.json index 1b1a91c8788c..80430510e965 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.tr.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "HTTPS'nin kapatılıp kapatılmayacağı.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hans.json index a4bd93e5554d..1082dbc7cc87 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否禁用 HTTPS。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hant.json index be00eabfe2f0..74b67b6e4a49 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -13,4 +13,4 @@ "symbols/NoHttps/description": "是否要關閉 HTTPS。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.cs.json index 45c2da5699ce..0be5a546ea8c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.cs.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Zakázání podpory OpenAPI (Swagger)", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.de.json index e1939e36e881..aff43303894a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.de.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Deaktivieren Sie die OpenAPI (Swagger) Unterstützung", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.en.json index 2f30a6ccb97b..1507b1e8498f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.en.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Disable OpenAPI (Swagger) support", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.es.json index 608e8b9b6c8e..9480443ae3f7 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.es.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Deshabilitar la compatibilidad con OpenAPI (Swagger)", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.fr.json index d19b47782955..137a69bc50f2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.fr.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Désactiver la prise en charge d’OpenAPI (Swagger)", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.it.json index a1ce81c31415..d07c5d0e60ac 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.it.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Disabilita il supporto di OpenAPI (Swagger)", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ja.json index 20b15c0b1f10..db9ff4dde435 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ja.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "OpenAPI (Swagger) サポートを無効にする", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ko.json index b3607496cdbe..f96a30d836a5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ko.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "OpenAPI(Swagger) 지원 비활성화", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pl.json index 68d33d23df7d..8c5b71cc84b2 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pl.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Włącz obsługę interfejsu OpenAPI (Swagger)", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pt-BR.json index 2083562b4699..6c7481a32e25 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Desabilitar suporte a OpenAPI (Swagger)", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executa 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ru.json index e042745497b3..dcefd3d9f8b1 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.ru.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "Отключение поддержки OpenAPI (Swagger)", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.tr.json index 85c5217b9cb8..3ada51e81afa 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.tr.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "OpenAPI (Swagger) desteğini devre dışı bırak", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hans.json index cbb633b7696e..992e86ddee36 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "禁用 OpenAI (Swagger)支持", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hant.json index aea19635471c..0643ce729967 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -13,4 +13,4 @@ "symbols/DisableOpenAPI/description": "停用 OpenAPI (Swagger) 支援", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.cs.json index 59a3f0c97ac8..6786161b31de 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.cs.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Určuje, jestli se má u projektu povolit publikování jako native AOT.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.de.json index 55de77fecd41..0bcea350db4e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.de.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Gibt an, ob das Projekt für die Veröffentlichung als native AOT aktiviert werden soll.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.en.json index 58b9b227a55c..7d51cff86822 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.en.json @@ -13,4 +13,4 @@ "symbols/NativeAot/description": "Whether to enable the project for publishing as native AOT.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.es.json index 71f61cb64666..5e00f75594b5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.es.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Indica si se debe habilitar el proyecto para publicarlo como native AOT.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.fr.json index 6af068fe779e..671674d9105c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.fr.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Indique si le projet doit être activé pour la publication en tant que native AOT.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.it.json index 3b91cae4e154..eb7818957462 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.it.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Se abilitare il progetto per la pubblicazione come native AOT.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ja.json index 015944c175fe..d79de9268d6a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ja.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "プロジェクトを native AOT として発行できるようにするかどうかを指定します。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ko.json index 7cc16cf7e1b1..8dd235564843 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ko.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "프로젝트를 native AOT로 게시할 수 있도록 설정할지 여부입니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pl.json index 5da665c4efee..0dcb54bd6c6e 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pl.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Określa, czy włączyć publikowanie projektu jako native AOT.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pt-BR.json index f73edeefdc38..e3f8f12d2386 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.pt-BR.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Se o projeto deve ser habilitado para publicação como native AOT.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ru.json index d1d294ef092c..a6cf5186bedd 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.ru.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Включить ли проект для публикации как native AOT.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.tr.json index 64e3e3f8cc43..5bf2039d9c86 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.tr.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "Projenin native AOT olarak yayımlama için etkinleştirilip etkinleştirilmeyeceğini belirtir.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hans.json index 0477488096ff..d40050aa7608 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "是否启用将项目以 native AOT 发布。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hant.json index e3e20ca81f86..f10ad34d63fa 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -12,4 +12,4 @@ "symbols/NativeAot/description": "是否要啟用專案以 native AOT 發佈。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.cs.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.cs.json index 72becdc120a0..b9a21f7e6a6a 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.cs.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.cs.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Pokud se tato možnost zadá, přeskočí automatické obnovení projektu při vytvoření.", "postActions/restore/description": "Obnoví balíčky NuGet vyžadované tímto projektem.", "postActions/restore/manualInstructions/default/text": "Spustit dotnet restore" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.de.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.de.json index 1a22fbfa78f8..8c92f2f900c5 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.de.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.de.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Wenn angegeben, wird die automatische Wiederherstellung des Projekts beim Erstellen übersprungen.", "postActions/restore/description": "„NuGet-Pakete“ wiederherstellen, die für dieses Projekt erforderlich sind.", "postActions/restore/manualInstructions/default/text": "„dotnet restore“ ausführen" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.en.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.en.json index 23af736e5f69..30684c10f80b 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.en.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.en.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "If specified, skips the automatic restore of the project on create.", "postActions/restore/description": "Restore NuGet packages required by this project.", "postActions/restore/manualInstructions/default/text": "Run 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.es.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.es.json index 635733a946ed..6ec74d549022 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.es.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.es.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Si se especifica, se omite la restauración automática del proyecto durante la creación.", "postActions/restore/description": "Restaure los paquetes NuGet necesarios para este proyecto.", "postActions/restore/manualInstructions/default/text": "Ejecutar \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.fr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.fr.json index 090d140b8666..07a73c6c6c0f 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.fr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.fr.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "S’il est spécifié, ignore la restauration automatique du projet lors de la création.", "postActions/restore/description": "Restaurez les packages NuGet requis par ce projet.", "postActions/restore/manualInstructions/default/text": "Exécuter « dotnet restore »" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.it.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.it.json index 9d34f37a70ef..1cfaa4749818 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.it.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.it.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Se specificato, ignora il ripristino automatico del progetto durante la creazione.", "postActions/restore/description": "Ripristina i pacchetti NuGet richiesti da questo progetto.", "postActions/restore/manualInstructions/default/text": "Esegui 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ja.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ja.json index 673ee91eaff4..214aaba11851 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ja.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ja.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "指定した場合、作成時にプロジェクトの自動復元がスキップされます。", "postActions/restore/description": "このプロジェクトに必要な NuGet パッケージを復元します。", "postActions/restore/manualInstructions/default/text": "'dotnet restore' を実行する" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ko.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ko.json index 8d114272c436..f8a3f9d6ca71 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ko.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ko.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "지정된 경우, 프로젝트 생성 시 자동 복원을 건너뜁니다.", "postActions/restore/description": "이 프로젝트에 필요한 NuGet 패키지를 복원합니다.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' 실행" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pl.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pl.json index 0df65fc793f5..1a5d0b62dee8 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pl.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pl.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Jeśli ta opcja jest określona, pomija automatyczne przywracanie projektu podczas tworzenia.", "postActions/restore/description": "Przywróć pakiety NuGet wymagane przez ten projekt.", "postActions/restore/manualInstructions/default/text": "Uruchom polecenie \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pt-BR.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pt-BR.json index 6a88f6f0b412..c0a30c1471f9 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pt-BR.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.pt-BR.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Se especificado, ignora a restauração automática do projeto sendo criado.", "postActions/restore/description": "Restaure os pacotes NuGet exigidos por este projeto.", "postActions/restore/manualInstructions/default/text": "Executar 'dotnet restore'" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ru.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ru.json index 4fede629e465..a01443d4da8c 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ru.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.ru.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Если установлено, автоматическое восстановление проекта при создании пропускается.", "postActions/restore/description": "Восстановление пакетов NuGet, необходимых для этого проекта.", "postActions/restore/manualInstructions/default/text": "Выполнить команду \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.tr.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.tr.json index 93ec18611bb7..e736867359cc 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.tr.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.tr.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "Belirtilirse, oluşturma sırasında projenin otomatik geri yüklenmesini atlar.", "postActions/restore/description": "Bu projenin gerektirdiği NuGet paketlerini geri yükleyin.", "postActions/restore/manualInstructions/default/text": "'dotnet restore' çalıştır" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hans.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hans.json index d757ce7bcd85..f9add8a000df 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hans.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hans.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "如果指定,则在创建时跳过项目的自动还原。", "postActions/restore/description": "还原此项目所需的 NuGet 包。", "postActions/restore/manualInstructions/default/text": "运行 \"dotnet restore\"" -} +} \ No newline at end of file diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hant.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hant.json index bad0ec18f8c4..922b307491cc 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hant.json +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/localize/templatestrings.zh-Hant.json @@ -8,4 +8,4 @@ "symbols/skipRestore/description": "若指定,會在建立時跳過專案的自動還原。", "postActions/restore/description": "還原此專案所需的 NuGet 套件。", "postActions/restore/manualInstructions/default/text": "執行 'dotnet restore'" -} +} \ No newline at end of file From b35f5140223b1d308bc1e622bb465adb3e6a9907 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 2 Jan 2026 15:04:52 +0000 Subject: [PATCH 6/6] Restore template.json files and test helpers that were incorrectly deleted Co-authored-by: javiercn <6995051+javiercn@users.noreply.github.com> --- .../Shared/BlazorTemplateTest.cs | 113 ++++ .../Shared/TestOutputLogger.cs | 31 ++ ...oft.DotNet.Web.Client.ItemTemplates.csproj | 2 +- .../Less/.template.config/template.json | 41 ++ .../Scss/.template.config/template.json | 41 ++ .../TypeScript/.template.config/template.json | 41 ++ .../Microsoft.DotNet.Web.ItemTemplates.csproj | 2 +- .../.template.config/template.json | 58 ++ .../.template.config/template.json | 58 ++ .../Protobuf/.template.config/template.json | 50 ++ .../.template.config/template.json | 45 ++ .../RazorPage/.template.config/template.json | 72 +++ .../RazorView/.template.config/template.json | 40 ++ .../.template.config/template.json | 47 ++ .../ViewStart/.template.config/template.json | 42 ++ ...crosoft.DotNet.Web.ProjectTemplates.csproj | 2 +- .../.template.config/template.json | 510 ++++++++++++++++++ .../.template.config/template.json | 494 +++++++++++++++++ .../.template.config/template.json | 214 ++++++++ .../.template.config/template.json | 181 +++++++ .../.template.config/template.json | 158 ++++++ .../.template.config/template.json | 125 +++++ .../.template.config/template.json | 460 ++++++++++++++++ .../.template.config/template.json | 456 ++++++++++++++++ .../.template.config/template.json | 186 +++++++ .../.template.config/template.json | 438 +++++++++++++++ .../.template.config/template.json | 181 +++++++ .../.template.config/template.json | 165 ++++++ .../.template.config/template.json | 121 +++++ .../.template.config/template.json | 92 ++++ .../BlazorWasmTemplateAuthTest.cs | 69 +-- .../BlazorWasmTemplateTest.cs | 65 +-- 32 files changed, 4469 insertions(+), 131 deletions(-) create mode 100644 src/ProjectTemplates/Shared/BlazorTemplateTest.cs create mode 100644 src/ProjectTemplates/Shared/TestOutputLogger.cs create mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json create mode 100644 src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json diff --git a/src/ProjectTemplates/Shared/BlazorTemplateTest.cs b/src/ProjectTemplates/Shared/BlazorTemplateTest.cs new file mode 100644 index 000000000000..5676a43ed1d8 --- /dev/null +++ b/src/ProjectTemplates/Shared/BlazorTemplateTest.cs @@ -0,0 +1,113 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System; +using System.Diagnostics; +using System.IO; +using System.Reflection; +using System.Runtime.InteropServices; +using System.Threading.Tasks; +using Microsoft.AspNetCore.InternalTesting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Logging.Testing; +using Templates.Test.Helpers; +using Xunit; +using Xunit.Abstractions; + +namespace Templates.Blazor.Test; + +public abstract class BlazorTemplateTest : LoggedTest +{ + public BlazorTemplateTest(ProjectFactoryFixture projectFactory) + { + ProjectFactory = projectFactory; + } + + public ProjectFactoryFixture ProjectFactory { get; set; } + + private ITestOutputHelper _output; + public ITestOutputHelper Output + { + get + { + if (_output == null) + { + _output = new TestOutputLogger(Logger); + } + return _output; + } + } + + public abstract string ProjectType { get; } + + protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null, bool serverProject = false, bool onlyCreate = false) + { + // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 + Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); + + var project = await ProjectFactory.CreateProject(Output); + if (targetFramework != null) + { + project.TargetFramework = targetFramework; + } + + await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); + + if (serverProject || auth is null) + { + // External auth mechanisms (which is any auth at all for Blazor WASM) require https to work and thus don't honor the --no-https flag + var requiresHttps = string.Equals(auth, "IndividualB2C", StringComparison.OrdinalIgnoreCase) + || string.Equals(auth, "SingleOrg", StringComparison.OrdinalIgnoreCase) + || (!serverProject && auth is not null); + var noHttps = args?.Contains(ArgConstants.NoHttps) ?? false; + var expectedLaunchProfileNames = requiresHttps + ? new[] { "https" } + : noHttps + ? new[] { "http" } + : new[] { "http", "https" }; + await project.VerifyLaunchSettings(expectedLaunchProfileNames); + } + + if (!onlyCreate) + { + var targetProject = project; + if (serverProject) + { + targetProject = GetSubProject(project, "Server", $"{project.ProjectName}.Server"); + } + + await targetProject.RunDotNetPublishAsync(noRestore: false); + } + + return project; + } + + protected static Project GetSubProject(Project project, string projectDirectory, string projectName) + { + var subProjectDirectory = Path.Combine(project.TemplateOutputDir, projectDirectory); + if (!Directory.Exists(subProjectDirectory)) + { + throw new DirectoryNotFoundException($"Directory {subProjectDirectory} was not found."); + } + + var subProject = new Project + { + Output = project.Output, + DiagnosticsMessageSink = project.DiagnosticsMessageSink, + ProjectName = projectName, + TemplateOutputDir = subProjectDirectory, + }; + + return subProject; + } + + protected static string ReadFile(string basePath, string path) + { + var fullPath = Path.Combine(basePath, path); + var doesExist = File.Exists(fullPath); + + Assert.True(doesExist, $"Expected file to exist, but it doesn't: {path}"); + return File.ReadAllText(Path.Combine(basePath, path)); + } +} diff --git a/src/ProjectTemplates/Shared/TestOutputLogger.cs b/src/ProjectTemplates/Shared/TestOutputLogger.cs new file mode 100644 index 000000000000..064906be586e --- /dev/null +++ b/src/ProjectTemplates/Shared/TestOutputLogger.cs @@ -0,0 +1,31 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using System.Globalization; +using Microsoft.Extensions.Logging; +using Xunit.Abstractions; + +namespace Templates.Test.Helpers; + +internal sealed class TestOutputLogger : ITestOutputHelper +{ + private readonly ILogger _logger; + + public TestOutputLogger(ILogger logger) + { + _logger = logger; + } + + public void WriteLine(string message) + { + _logger.LogInformation(message); + } + + public void WriteLine(string format, params object[] args) + { + if (_logger.IsEnabled(LogLevel.Information)) + { + _logger.LogInformation(string.Format(CultureInfo.InvariantCulture, format, args)); + } + } +} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj b/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj index e602e78cebdc..c05ae08ce8ea 100644 --- a/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/Microsoft.DotNet.Web.Client.ItemTemplates.csproj @@ -3,7 +3,7 @@ $(DefaultNetCoreTargetFramework) Web Client-Side File Templates for Microsoft Template Engine - false + true diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json new file mode 100644 index 000000000000..9f38172c4503 --- /dev/null +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Less/.template.config/template.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "Style" ], + "name": "LESS Style Sheet", + "generatorVersions": "[1.0.0.0-*)", + "description": "LESS is a language that compiles into CSS", + "groupIdentity": "Microsoft.DotNet.Web.ClientItems.Less", + "precedence": "10000", + "identity": "Microsoft.DotNet.Web.ClientItems.Less.10.0", + "shortName": "less", + "sourceName": "styleSheet1", + "tags": { + "type": "item" + }, + "primaryOutputs": [ + { + "path": "styleSheet1.less" + } + ], + "defaultName": "styleSheet1", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens styleSheet1.less in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json new file mode 100644 index 000000000000..8e3400fd9ffc --- /dev/null +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/Scss/.template.config/template.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "Style" ], + "name": "SCSS Style Sheet (SASS)", + "generatorVersions": "[1.0.0.0-*)", + "description": "SCSS is a language that compiles into CSS", + "groupIdentity": "Microsoft.DotNet.Web.ClientItems.Scss", + "precedence": "10000", + "identity": "Microsoft.DotNet.Web.ClientItems.Scss.10.0", + "shortName": "scss", + "sourceName": "styleSheet1", + "tags": { + "type": "item" + }, + "primaryOutputs": [ + { + "path": "styleSheet1.scss" + } + ], + "defaultName": "styleSheet1", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens styleSheet1.scss in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json new file mode 100644 index 000000000000..7a340a53b7a3 --- /dev/null +++ b/src/ProjectTemplates/Web.Client.ItemTemplates/content/TypeScript/.template.config/template.json @@ -0,0 +1,41 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "Script" ], + "name": "TypeScript file", + "generatorVersions": "[1.0.0.0-*)", + "description": "A blank TypeScript source file", + "groupIdentity": "Microsoft.DotNet.Web.ClientItems.TypeScript", + "precedence": "10000", + "identity": "Microsoft.DotNet.Web.ClientItems.TypeScript.10.0", + "shortName": "tsfile", + "sourceName": "file1", + "tags": { + "type": "item" + }, + "primaryOutputs": [ + { + "path": "file1.ts" + } + ], + "defaultName": "file1", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens file1.ts in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj b/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj index c147de713b53..439c0e07701c 100644 --- a/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj +++ b/src/ProjectTemplates/Web.ItemTemplates/Microsoft.DotNet.Web.ItemTemplates.csproj @@ -4,7 +4,7 @@ $(DefaultNetCoreTargetFramework) Microsoft.DotNet.Web.ItemTemplates.$(AspNetCoreMajorMinorVersion) Web File Templates for Microsoft Template Engine. - false + true diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json new file mode 100644 index 000000000000..a5b8aef8d3da --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ApiController/.template.config/template.json @@ -0,0 +1,58 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "API Controller", + "generatorVersions": "[1.0.0.0-*)", + "description": "API Controller with or without read/write actions", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.ApiController", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.ApiController.10.0", + "shortName": "apicontroller", + "sourceName": "ValueController", + "primaryOutputs": [ + { + "path": "ValueController.cs" + } + ], + "defaultName": "ValueController", + "symbols": { + "namespace": { + "description": "Namespace for the generated code", + "replaces": "MyApp.Namespace", + "type": "parameter" + }, + "actions": { + "description": "Create controller with read/write actions", + "displayName": "Add Read/Write Actions", + "type": "parameter", + "datatype": "bool", + "defaultValue": "false" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "NameIsController": { + "type": "computed", + "value": "(name == \"ControllerBase\")" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens the created controller in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json new file mode 100644 index 000000000000..4a03a91f4897 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/MvcController/.template.config/template.json @@ -0,0 +1,58 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "MVC Controller", + "generatorVersions": "[1.0.0.0-*)", + "description": "MVC Controller with or without read/write actions", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.MvcController", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.MvcController.10.0", + "shortName": "mvccontroller", + "sourceName": "HomeController", + "primaryOutputs": [ + { + "path": "HomeController.cs" + } + ], + "defaultName": "HomeController", + "symbols": { + "namespace": { + "description": "Namespace for the generated code", + "replaces": "MyApp.Namespace", + "type": "parameter" + }, + "actions": { + "description": "Create controller with read/write actions", + "displayName": "Add Read/Write Actions", + "type": "parameter", + "datatype": "bool", + "defaultValue": "false" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "NameIsController": { + "type": "computed", + "value": "(name == \"Controller\")" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens the created controller in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json new file mode 100644 index 000000000000..b4c2db526398 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/Protobuf/.template.config/template.json @@ -0,0 +1,50 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "gRPC" + ], + "name": "Protocol Buffer File", + "generatorVersions": "[1.0.0.0-*)", + "description": "A protocol buffer file for describing messages and services for gRPC.", + "tags": { + "language": "", + "type": "item" + }, + "groupIdentity": "Microsoft.Web.Grpc.Protobuf", + "precedence": "10000", + "identity": "Microsoft.Web.Grpc.Protobuf.10.0", + "shortname": "proto", + "sourceName": "protobuf", + "primaryOutputs": [ + { + "path": "protobuf.proto" + } + ], + "defaultName": "protobuf", + "symbols": { + "namespace": { + "description": "namespace for the generated code", + "replaces": "MyApp.Namespace", + "type": "parameter" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens protobuf.proto in the editor", + "manualInstructions": [], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json new file mode 100644 index 000000000000..37e89b7c41f7 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorComponent/.template.config/template.json @@ -0,0 +1,45 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "ASP.NET" + ], + "name": "Razor Component", + "generatorVersions": "[1.0.0.0-*)", + "description": "A reusable UI component implemented with Razor", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Components.RazorComponent", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Components.RazorComponent.10.0", + "shortname": "razorcomponent", + "sourceName": "Component1", + "primaryOutputs": [ + { + "path": "Component1.razor" + } + ], + "defaultName": "Component1", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens Component1.razor in the editor", + "manualInstructions": [], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json new file mode 100644 index 000000000000..e3d340cee888 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorPage/.template.config/template.json @@ -0,0 +1,72 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "Razor Page", + "generatorVersions": "[1.0.0.0-*)", + "description": "A Razor page with or without a page model", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.RazorPage", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.RazorPage.10.0", + "shortName": "page", + "sourceName": "Index", + "primaryOutputs": [ + { "path": "Index.cshtml" }, + { + "path": "Index.cshtml.cs", + "condition": "(!no-pagemodel)" + } + ], + "defaultName": "Index", + "sources": [ + { + "modifiers": [ + { + "condition": "(no-pagemodel)", + "exclude": [ + "Index.cshtml.cs" + ] + } + ] + } + ], + "symbols": { + "namespace": { + "description": "namespace for the generated code", + "replaces": "MyApp.Namespace", + "type": "parameter" + }, + "no-pagemodel": { + "description": "create page without a PageModel", + "displayName": "Exclude PageModel", + "type": "parameter", + "datatype": "bool", + "defaultValue": "false" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "NameIsPage": { + "type": "computed", + "value": "(name == \"Page\")" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens Index.cshtml in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json new file mode 100644 index 000000000000..8d05235d6994 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/RazorView/.template.config/template.json @@ -0,0 +1,40 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "Razor View", + "generatorVersions": "[1.0.0.0-*)", + "description": "An empty Razor View", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.RazorView", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.RazorView.10.0", + "shortName": "view", + "sourceName": "Index", + "primaryOutputs": [ + { "path": "Index.cshtml" } + ], + "defaultName": "Index", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens the created view in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json new file mode 100644 index 000000000000..454f475a3a0c --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewImports/.template.config/template.json @@ -0,0 +1,47 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "MVC ViewImports", + "generatorVersions": "[1.0.0.0-*)", + "description": "An MVC View Import Page", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.ViewImports", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.ViewImports.10.0", + "shortName": "viewimports", + "sourceName": "ignoreme", + "primaryOutputs": [ + { + "path": "_ViewImports.cshtml" + } + ], + "defaultName": "_ViewImports", + "symbols": { + "namespace": { + "description": "namespace for the generated code", + "replaces": "MyApp.Namespace", + "type": "parameter" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens _ViewImports.cshtml in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json new file mode 100644 index 000000000000..3c8a010849e3 --- /dev/null +++ b/src/ProjectTemplates/Web.ItemTemplates/content/ViewStart/.template.config/template.json @@ -0,0 +1,42 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ "Web", "ASP.NET" ], + "name": "MVC ViewStart", + "generatorVersions": "[1.0.0.0-*)", + "description": "An MVC ViewStart Page", + "tags": { + "language": "C#", + "type": "item" + }, + "groupIdentity": "Microsoft.AspNetCore.Mvc.ViewStart", + "precedence": "10000", + "identity": "Microsoft.AspNetCore.Mvc.ViewStart.10.0", + "shortName": "viewstart", + "sourceName": "ignoreme", + "primaryOutputs": [ + { + "path": "_ViewStart.cshtml" + } + ], + "defaultName": "_ViewStart", + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + } + }, + "postActions": [ + { + "id": "openInEditor", + "condition": "(HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens _ViewStart.cshtml in the editor", + "manualInstructions": [ ], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj index 00bf3f05c118..92879cd52586 100644 --- a/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj +++ b/src/ProjectTemplates/Web.ProjectTemplates/Microsoft.DotNet.Web.ProjectTemplates.csproj @@ -5,7 +5,7 @@ Microsoft.DotNet.Web.ProjectTemplates.$(AspNetCoreMajorMinorVersion) ASP.NET Core Web Template Pack for Microsoft Template Engine $(RepoRoot)src\Components\WebAssembly\ - false + true diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json new file mode 100644 index 000000000000..df16332f7827 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/.template.config/template.json @@ -0,0 +1,510 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Blazor", + "WebAssembly" + ], + "name": "Blazor Web App", + "defaultName": "BlazorApp", + "description": "A project template for creating a Blazor web app that supports both server-side rendering and client interactivity. This template can be used for web apps with rich dynamic user interfaces (UIs).", + "groupIdentity": "Microsoft.Web.Blazor", + "precedence": "10000", + "guids": [ + "4C26868E-5E7C-458D-82E3-040509D0C71F", + "5990939C-7E7B-4CFA-86FF-44CA5756498A", + "650B3CE7-2E93-4CC4-9F46-466686815EAA", + "53bc9b9d-9d6a-45d4-8429-2a2761773502" + ], + "identity": "Microsoft.Web.Blazor.CSharp.10.0", + "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", + "preferNameDirectory": true, + "primaryOutputs": [ + { + "condition": "(UseWebAssembly && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))", + "path": "BlazorWebCSharp.1.sln" + }, + { + "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "path": "BlazorWebCSharp.1/BlazorWebCSharp.1.csproj" + }, + { + "condition": "(!UseWebAssembly)", + "path": "BlazorWebCSharp.1.csproj" + }, + { + "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "path": "BlazorWebCSharp.1.Client/BlazorWebCSharp.1.Client.csproj" + } + ], + "shortName": "blazor", + "sourceName": "BlazorWebCSharp.1", + "sources": [ + { + "source": "./", + "target": "./", + "exclude": [ + ".template.config/**" + ], + "copyOnly": [ + "**/wwwroot/bootstrap/**" + ], + "modifiers": [ + { + "condition": "(!UseWebAssembly)", + "exclude": [ + "BlazorWebCSharp.1.Client/**", + "*.sln" + ], + "rename": { + "BlazorWebCSharp.1/": "./" + } + }, + { + "condition": "(UseWebAssembly && InteractiveAtRoot)", + "rename": { + "BlazorWebCSharp.1/Components/Layout/": "./BlazorWebCSharp.1.Client/Layout/", + "BlazorWebCSharp.1/Components/Pages/Home.razor": "./BlazorWebCSharp.1.Client/Pages/Home.razor", + "BlazorWebCSharp.1/Components/Pages/NotFound.razor": "./BlazorWebCSharp.1.Client/Pages/NotFound.razor", + "BlazorWebCSharp.1/Components/Pages/Weather.razor": "./BlazorWebCSharp.1.Client/Pages/Weather.razor", + "BlazorWebCSharp.1/Components/Routes.razor": "./BlazorWebCSharp.1.Client/Routes.razor" + } + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "BlazorWebCSharp.1/Program.Main.cs", + "BlazorWebCSharp.1.Client/Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "BlazorWebCSharp.1/Program.cs", + "BlazorWebCSharp.1.Client/Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + }, + { + "condition": "(!(UseServer && !UseWebAssembly))", + "exclude": [ + "BlazorWebCSharp.1/Components/Pages/Counter.razor" + ] + }, + { + "condition": "(!UseServer)", + "exclude": [ + "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor", + "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor.css", + "BlazorWebCSharp.1/Components/Layout/ReconnectModal.razor.js", + "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor", + "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor.css", + "BlazorWebCSharp.1.Client/Layout/ReconnectModal.razor.js" + ] + }, + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "BlazorWebCSharp.1/Properties/launchSettings.json" + ] + }, + { + "condition": "(!SampleContent)", + "exclude": [ + "BlazorWebCSharp.1/Components/Pages/Auth.*", + "BlazorWebCSharp.1/Components/Pages/Counter.*", + "BlazorWebCSharp.1/Components/Pages/Weather.*", + "BlazorWebCSharp.1/Components/Layout/NavMenu.*", + "BlazorWebCSharp.1/wwwroot/lib/**", + "BlazorWebCSharp.1/wwwroot/favicon.*", + "BlazorWebCSharp.1.Client/Pages/**", + "BlazorWebCSharp.1.Client/wwwroot/**" + ] + }, + { + "condition": "(UseWebAssembly && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "exclude": [ + "*.sln" + ] + }, + { + "condition": "(!IndividualLocalAuth)", + "exclude": [ + "BlazorWebCSharp.1/Components/Account/**", + "BlazorWebCSharp.1/Data/**", + "BlazorWebCSharp.1.Client/UserInfo.cs", + "BlazorWebCSharp.1.Client/Pages/Auth.razor" + ] + }, + { + "condition": "(!(IndividualLocalAuth && !UseLocalDB))", + "exclude": [ + "BlazorWebCSharp.1/Data/app.db" + ] + }, + { + "condition": "(!(IndividualLocalAuth && !UseWebAssembly))", + "exclude": [ + "BlazorWebCSharp.1/Components/Pages/Auth.razor" + ] + }, + { + "condition": "(!(IndividualLocalAuth && UseServer))", + "exclude": [ + "BlazorWebCSharp.1/Components/Account/IdentityRevalidatingAuthenticationStateProvider.cs" + ] + }, + { + "condition": "(IndividualLocalAuth && UseLocalDB && UseWebAssembly)", + "rename": { + "BlazorWebCSharp.1/Data/SqlServer/": "BlazorWebCSharp.1/Data/Migrations/" + }, + "exclude": [ + "BlazorWebCSharp.1/Data/SqlLite/**" + ] + }, + { + "condition": "(IndividualLocalAuth && UseLocalDB && !UseWebAssembly)", + "rename": { + "BlazorWebCSharp.1/Data/SqlServer/": "Data/Migrations/" + }, + "exclude": [ + "BlazorWebCSharp.1/Data/SqlLite/**" + ] + }, + { + "condition": "(IndividualLocalAuth && !UseLocalDB && UseWebAssembly)", + "rename": { + "BlazorWebCSharp.1/Data/SqlLite/": "BlazorWebCSharp.1/Data/Migrations/" + }, + "exclude": [ + "BlazorWebCSharp.1/Data/SqlServer/**" + ] + }, + { + "condition": "(IndividualLocalAuth && !UseLocalDB && !UseWebAssembly)", + "rename": { + "BlazorWebCSharp.1/Data/SqlLite/": "Data/Migrations/" + }, + "exclude": [ + "BlazorWebCSharp.1/Data/SqlServer/**" + ] + }, + { + "condition": "(IndividualLocalAuth && UseWebAssembly)", + "rename": { + "BlazorWebCSharp.1/Components/Account/Shared/RedirectToLogin.razor": "BlazorWebCSharp.1.Client/RedirectToLogin.razor" + } + } + ] + } + ], + "symbols": { + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "UserSecretsId": { + "type": "parameter", + "datatype": "string", + "replaces": "aspnet-BlazorWebCSharp.1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "defaultValue": "aspnet-BlazorWebCSharp.1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "description": "The ID to use for secrets (use with Individual auth)." + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5500" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if Individual auth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5501" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if Individual auth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "StyleBundleName":{ + "type": "generated", + "generator": "regex", + "replaces": "StyleBundleName", + "parameters": { + "source": "name", + "steps": [ + { + "regex": " ", + "replacement": "_" + }] + } + }, + "InteractivityPlatform": { + "type": "parameter", + "datatype": "choice", + "defaultValue": "Server", + "displayName": "_Interactive render mode", + "description": "Chooses which interactive render mode to use for interactive components", + "choices": [ + { + "choice": "None", + "displayName": "None", + "description": "No interactivity (static server rendering only)" + }, + { + "choice": "Server", + "displayName": "Server", + "description": "Runs on the server" + }, + { + "choice": "WebAssembly", + "displayName": "WebAssembly", + "description": "Runs in the browser using WebAssembly" + }, + { + "choice": "Auto", + "displayName": "Auto (Server and WebAssembly)", + "description": "Uses Server while downloading WebAssembly assets, then uses WebAssembly" + } + ] + }, + "InteractivityLocation": { + "type": "parameter", + "datatype": "choice", + "defaultValue": "InteractivePerPage", + "displayName": "Interactivity _location", + "description": "Chooses which components will have interactive rendering enabled", + "isEnabled": "(InteractivityPlatform != \"None\")", + "choices": [ + { + "choice": "InteractivePerPage", + "displayName": "Per page/component", + "description": "Interactivity is applied on a per-page or per-component basis" + }, + { + "choice": "InteractiveGlobal", + "displayName": "Global", + "description": "Interactivity is applied at the root level" + } + ] + }, + "UseWebAssembly": { + "type": "computed", + "value": "(InteractivityPlatform == \"WebAssembly\" || InteractivityPlatform == \"Auto\")" + }, + "UseServer": { + "type": "computed", + "value": "(InteractivityPlatform == \"Server\" || InteractivityPlatform == \"Auto\")" + }, + "IncludeSampleContent": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "true", + "displayName": "Include _sample pages", + "description": "Configures whether to add sample pages and styling to demonstrate basic usage patterns." + }, + "Empty": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Configures whether to omit sample pages and styling that demonstrate basic usage patterns." + }, + "auth": { + "type": "parameter", + "datatype": "choice", + "choices": [ + { + "choice": "None", + "description": "No authentication" + }, + { + "choice": "Individual", + "description": "Individual authentication" + } + ], + "defaultValue": "None", + "description": "The type of authentication to use" + }, + "UseLocalDB": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual is specified." + }, + "SampleContent": { + "type": "computed", + "value": "(((IncludeSampleContent && (HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\"))) || ((!Empty && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))))" + }, + "AllInteractive": { + "type": "parameter", + "datatype": "bool", + "isEnabled": "(InteractivityPlatform != \"None\")", + "defaultValue": "false", + "displayName": "_Enable interactive rendering globally throughout the site", + "description": "Configures whether to make every page interactive by applying an interactive render mode at the top level. If false, pages will use static server rendering by default, and can be marked interactive on a per-page or per-component basis." + }, + "InteractiveAtRoot": { + "type": "computed", + "value": "(InteractivityLocation == \"InteractiveGlobal\" || AllInteractive)" + }, + "IndividualLocalAuth": { + "type": "computed", + "value": "(auth == \"Individual\")" + }, + "RequiresHttps": { + "type": "computed", + "value": "(OrganizationalAuth || IndividualLocalAuth)" + }, + "HasHttpProfile": { + "type": "computed", + "value": "(!RequiresHttps)" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(RequiresHttps || !NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if Individual isn't used for --auth." + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "LocalhostTld": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Use the .dev.localhost TLD in the application URL", + "description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345." + } + }, + "tags": { + "language": "C#", + "type": "project" + }, + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json new file mode 100644 index 000000000000..66cdb208eee5 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/ComponentsWebAssembly-CSharp/.template.config/template.json @@ -0,0 +1,494 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Blazor", + "WebAssembly", + "PWA" + ], + "name": "Blazor WebAssembly Standalone App", + "defaultName": "BlazorApp", + "description": "A project template for creating a Blazor app that runs on WebAssembly. This template can be used for web apps with rich dynamic user interfaces (UIs).", + "groupIdentity": "Microsoft.Web.Blazor.Wasm", + "precedence": "10000", + "guids": [ + "4C26868E-5E7C-458D-82E3-040509D0C71F", + "5990939C-7E7B-4CFA-86FF-44CA5756498A", + "650B3CE7-2E93-4CC4-9F46-466686815EAA", + "0AFFA7FD-4E37-4636-AB91-3753E746DB98", + "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID + ], + "identity": "Microsoft.Web.Blazor.Wasm.CSharp.10.0", + "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", + "preferNameDirectory": true, + "primaryOutputs": [ + { + "path": "ComponentsWebAssembly-CSharp.csproj" + } + ], + "shortName": "blazorwasm", + "sourceName": "ComponentsWebAssembly-CSharp", + "sources": [ + { + "source": "./", + "target": "./", + "exclude": [ + ".template.config/**" + ], + "copyOnly": [ + "**/wwwroot/bootstrap/**" + ], + "modifiers": [ + { + "condition": "(!PWA)", + "exclude": [ + "wwwroot/service-worker*.js", + "wwwroot/manifest.webmanifest", + "wwwroot/icon-512.png" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + }, + { + "condition": "(!IndividualLocalAuth)", + "exclude": [ + "wwwroot/appsettings.Development.json" + ] + }, + { + "condition": "(NoAuth)", + "rename": { + "Layout/MainLayout.NoAuth.razor": "Layout/MainLayout.razor" + }, + "exclude": [ + "Pages/Authentication.razor", + "Layout/LoginDisplay.razor", + "Layout/MainLayout.Auth.razor", + "Layout/RedirectToLogin.razor", + "wwwroot/appsettings.Development.json", + "wwwroot/appsettings.json" + ] + }, + { + "condition": "(!NoAuth)", + "rename": { + "Layout/MainLayout.Auth.razor": "Layout/MainLayout.razor" + }, + "exclude": [ + "Layout/MainLayout.NoAuth.razor" + ] + }, + { + "condition": "(!GenerateApi)", + "rename": { + "Layout/NavMenu.NoApi.razor": "Layout/NavMenu.razor" + }, + "exclude": [ + "Pages/CallWebApi.razor", + "Layout/NavMenu.CallsWebApi.razor" + ] + }, + { + "condition": "(GenerateApi)", + "rename": { + "Layout/NavMenu.CallsWebApi.razor": "Layout/NavMenu.razor" + }, + "exclude": [ + "Layout/NavMenu.NoApi.razor" + ] + }, + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!SampleContent)", + "exclude": [ + "Pages/Counter.*", + "Pages/Weather.*", + "Layout/MainLayout.razor.css", + "Layout/NavMenu.*", + "wwwroot/lib/**", + "wwwroot/favicon.png", + "wwwroot/sample-data/weather.json" + ] + } + ] + } + ], + "symbols": { + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "auth": { + "type": "parameter", + "datatype": "choice", + "choices": [ + { + "choice": "None", + "description": "No authentication" + }, + { + "choice": "Individual", + "description": "Individual authentication" + }, + { + "choice": "IndividualB2C", + "description": "Individual authentication with Azure AD B2C" + }, + { + "choice": "SingleOrg", + "description": "Organizational authentication for a single tenant" + } + ], + "defaultValue": "None", + "description": "The type of authentication to use" + }, + "Authority": { + "type": "parameter", + "datatype": "string", + "replaces": "https://login.microsoftonline.com/", + "description": "The authority of the OIDC provider (use with standalone Individual auth)." + }, + "MissingAuthority": { + "type": "computed", + "value": "(IndividualAuth && Authority == \"https://login.microsoftonline.com/\" && ClientId == \"33333333-3333-3333-33333333333333333\")" + }, + "AAdB2CInstance": { + "type": "parameter", + "datatype": "string", + "replaces": "https:////aadB2CInstance.b2clogin.com/", + "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." + }, + "SignUpSignInPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_susi", + "replaces": "MySignUpSignInPolicyId", + "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." + }, + "AADInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/", + "replaces": "https:////login.microsoftonline.com/", + "description": "The Azure Active Directory instance to connect to (use with SingleOrg auth)." + }, + "ClientId": { + "type": "parameter", + "datatype": "string", + "replaces": "33333333-3333-3333-33333333333333333", + "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or Individual auth in standalone scenarios)." + }, + "Domain": { + "type": "parameter", + "datatype": "string", + "replaces": "qualified.domain.name", + "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." + }, + "AppIDUri": { + "type": "parameter", + "datatype": "string", + "replaces": "api.id.uri", + "description": "The App ID Uri for the server API we want to call (use with SingleOrg or IndividualB2C auth)." + }, + "APIClientId": { + "type": "parameter", + "datatype": "string", + "replaces": "11111111-1111-1111-11111111111111111", + "description": "The Client ID for the API that the server hosts (use with IndividualB2C, SingleOrg)." + }, + "DefaultScope": { + "type": "parameter", + "datatype": "string", + "replaces": "api-scope", + "defaultValue": "access_as_user", + "description": "The API scope the client needs to request to provision an access token. (use with IndividualB2C, SingleOrg)." + }, + "TenantId": { + "type": "parameter", + "datatype": "string", + "replaces": "22222222-2222-2222-2222-222222222222", + "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." + }, + "OrgReadAccess": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg)." + }, + "UserSecretsId": { + "type": "parameter", + "datatype": "string", + "replaces": "aspnet-BlazorServerWeb-CSharp-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "defaultValue": "aspnet-BlazorServerWeb-CSharp-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "PWA": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "_Progressive Web Application", + "description": "If specified, produces a Progressive Web Application (PWA) supporting installation and offline use." + }, + "OrganizationalAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" + }, + "MultiOrgAuth": { + "type": "computed", + "value": "(auth == \"MultiOrg\")" + }, + "SingleOrgAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\")" + }, + "IndividualLocalAuth": { + "type": "computed", + "value": "(auth == \"Individual\")" + }, + "IndividualAuth": { + "type": "computed", + "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" + }, + "IndividualB2CAuth": { + "type": "computed", + "value": "(auth == \"IndividualB2C\")" + }, + "IncludeSampleContent": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "true", + "displayName": "_Include sample pages", + "description": "Configures whether to add sample pages and styling to demonstrate basic usage patterns." + }, + "Empty": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Configures whether to omit sample pages and styling that demonstrate basic usage patterns." + }, + "SampleContent": { + "type": "computed", + "value": "(((IncludeSampleContent && (HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\"))) || ((!Empty && (HostIdentifier == \"dotnetcli\" || HostIdentifier == \"dotnetcli-preview\"))))" + }, + "NoAuth": { + "type": "computed", + "value": "(!(IndividualAuth || OrganizationalAuth))" + }, + "RequiresHttps": { + "type": "computed", + "value": "(OrganizationalAuth || IndividualAuth)" + }, + "HasHttpProfile": { + "type": "computed", + "value": "(!RequiresHttps)" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(RequiresHttps || !NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + }, + "UseLocalDB": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "CalledApiUrl": { + "type": "parameter", + "datatype": "string", + "replaces": "[WebApiUrl]", + "defaultValue": "https://graph.microsoft.com/v1.0", + "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C without and ASP.NET Core host is specified." + }, + "CalledApiScopes": { + "type": "parameter", + "datatype": "string", + "replaces": "user.read", + "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C without and ASP.NET Core host is specified." + }, + "GenerateApi": { + "type": "computed", + "value": "(IndividualB2CAuth && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + } + }, + "tags": { + "language": "C#", + "type": "project" + }, + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "args": { + "files": ["ComponentsWebAssembly-CSharp.csproj"] + }, + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + }, + { + "id": "open-file", + "condition": "(IndividualLocalAuth && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens Readme.txt in the editor", + "manualInstructions": [], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "0" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json new file mode 100644 index 000000000000..b2249e8d99bc --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-CSharp/.template.config/template.json @@ -0,0 +1,214 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Empty" + ], + "name": "ASP.NET Core Empty", + "generatorVersions": "[1.0.0.0-*)", + "description": "An empty project template for creating an ASP.NET Core application. This template does not have any content in it.", + "groupIdentity": "Microsoft.Web.Empty", + "precedence": "10000", + "identity": "Microsoft.Web.Empty.CSharp.10.0", + "shortName": "web", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" + ], + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(!NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "LocalhostTld": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Use the .dev.localhost TLD in the application URL", + "description": "Whether to combine the project name with the .dev.localhost TLD in the application URL for local development, e.g. https://myapp.dev.localhost:12345." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.csproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json new file mode 100644 index 000000000000..a8d459dbfa34 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/EmptyWeb-FSharp/.template.config/template.json @@ -0,0 +1,181 @@ +{ + "author": "Microsoft", + "classifications": [ + "Web", + "Empty" + ], + "name": "ASP.NET Core Empty", + "generatorVersions": "[1.0.0.0-*)", + "description": "An empty project template for creating an ASP.NET Core application. This template does not have any content in it.", + "groupIdentity": "Microsoft.Web.Empty", + "precedence": "10000", + "identity": "Microsoft.Web.Empty.FSharp.10.0", + "shortName": "web", + "tags": { + "language": "F#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(!NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.fsproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json new file mode 100644 index 000000000000..44d84749a755 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/GrpcService-CSharp/.template.config/template.json @@ -0,0 +1,158 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "gRPC", + "API", + "Service" + ], + "name": "ASP.NET Core gRPC Service", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating a gRPC service using ASP.NET Core, with optional support for publishing as native AOT.", + "groupIdentity": "Microsoft.Web.Grpc", + "precedence": "10000", + "identity": "Microsoft.Grpc.Service.CSharp.10.0", + "shortName": "grpc", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "GrpcService-CSharp", + "preferNameDirectory": true, + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "defaultValue": "net10.0" + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "NativeAot" : { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Enable _native AOT publish", + "description": "Whether to enable the project for publishing as native AOT." + } + }, + "primaryOutputs": [ + { + "path": "GrpcService-CSharp.csproj" + } + ], + "defaultName": "GrpcService", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json new file mode 100644 index 000000000000..5200f94c468c --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorClassLibrary-CSharp/.template.config/template.json @@ -0,0 +1,125 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Razor", + "Library" + ], + "name": "Razor Class Library", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project for creating a Razor class library that targets .NET", + "groupIdentity": "Microsoft.Web.Razor", + "precedence": "10000", + "identity": "Microsoft.Web.Razor.Library.CSharp.10.0", + "shortName": "razorclasslib", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.RazorClassLibrary1", + "preferNameDirectory": true, + "sources": [ + { + "modifiers": [ + { + "condition": "(!SupportPagesAndViews)", + "exclude": [ + "Areas/**" + ] + }, + { + "condition": "(SupportPagesAndViews)", + "exclude": [ + "_Imports.razor", + "Component1.razor", + "Component1.razor.css", + "ExampleJsInterop.cs", + "wwwroot/**" + ] + } + ] + } + ], + "symbols": { + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "defaultValue": "net10.0" + }, + "HostIdentifier": { + "type": "bind", + "binding": "HostIdentifier" + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "SupportPagesAndViews": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Support pages and views", + "description": "Whether to support adding traditional Razor pages and Views to this library." + } + }, + "primaryOutputs": [ + { + "path": "Company.RazorClassLibrary1.csproj" + }, + { + "condition": "(SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "path": "Areas/MyFeature/Pages/Page1.cshtml" + }, + { + "condition": "(!SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "path": "Component1.razor" + } + ], + "defaultName": "RazorClassLibrary", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + }, + { + "id": "openPageInEditor", + "condition": "(SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens Areas/MyFeature/Pages/Page1.cshtml in the editor", + "manualInstructions": [], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "1" + }, + "continueOnError": true + }, + { + "id": "openComponentInEditor", + "condition": "(!SupportPagesAndViews && HostIdentifier != \"dotnetcli\" && HostIdentifier != \"dotnetcli-preview\")", + "description": "Opens Component1.razor in the editor", + "manualInstructions": [], + "actionId": "84C0DA21-51C8-4541-9940-6CA19AF04EE6", + "args": { + "files": "1" + }, + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json new file mode 100644 index 000000000000..6e9ffc26ce22 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/RazorPagesWeb-CSharp/.template.config/template.json @@ -0,0 +1,460 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "MVC", + "Razor Pages" + ], + "name": "ASP.NET Core Web App (Razor Pages)", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core Razor Pages content", + "groupIdentity": "Microsoft.Web.RazorPages", + "precedence": "10000", + "identity": "Microsoft.Web.RazorPages.CSharp.10.0", + "shortName": [ + "webapp", + "razor" + ], + "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID + ], + "sources": [ + { + "copyOnly": [ + "wwwroot/**" + ], + "modifiers": [ + { + "condition": "(!OrganizationalAuth && !IndividualAuth)", + "exclude": [ + "Pages/Shared/_LoginPartial.Identity.cshtml", + "Pages/Shared/_LoginPartial.OrgAuth.cshtml" + ] + }, + { + "condition": "(OrganizationalAuth || IndividualB2CAuth)", + "rename": { + "Pages/Shared/_LoginPartial.OrgAuth.cshtml": "Pages/Shared/_LoginPartial.cshtml" + }, + "exclude": [ + "Pages/Shared/_LoginPartial.Identity.cshtml" + ] + }, + { + "condition": "(IndividualLocalAuth)", + "rename": { + "Pages/Shared/_LoginPartial.Identity.cshtml": "Pages/Shared/_LoginPartial.cshtml" + }, + "exclude": [ + "Pages/Shared/_LoginPartial.OrgAuth.cshtml" + ] + }, + { + "condition": "(!IndividualLocalAuth || UseLocalDB)", + "exclude": [ + "app.db" + ] + }, + { + "condition": "(!IndividualLocalAuth)", + "exclude": [ + "Data/**", + "Areas/**" + ] + }, + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(IndividualLocalAuth && UseLocalDB)", + "rename": { + "Data/SqlServer/": "Data/Migrations/" + }, + "exclude": [ + "Data/SqlLite/**" + ] + }, + { + "condition": "(IndividualLocalAuth && !UseLocalDB)", + "rename": { + "Data/SqlLite/": "Data/Migrations/" + }, + "exclude": [ + "Data/SqlServer/**" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "auth": { + "type": "parameter", + "datatype": "choice", + "choices": [ + { + "choice": "None", + "description": "No authentication" + }, + { + "choice": "Individual", + "description": "Individual authentication" + }, + { + "choice": "IndividualB2C", + "description": "Individual authentication with Azure AD B2C" + }, + { + "choice": "SingleOrg", + "description": "Organizational authentication for a single tenant" + }, + { + "choice": "MultiOrg", + "description": "Organizational authentication for multiple tenants" + }, + { + "choice": "Windows", + "description": "Windows authentication" + } + ], + "defaultValue": "None", + "description": "The type of authentication to use" + }, + "AAdB2CInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/tfp/", + "replaces": "https:////login.microsoftonline.com/tfp/", + "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." + }, + "SignUpSignInPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_susi", + "replaces": "MySignUpSignInPolicyId", + "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." + }, + "SignedOutCallbackPath": { + "type": "parameter", + "datatype": "string", + "defaultValue": "/signout/B2C_1_susi", + "replaces": "/signout/MySignUpSignInPolicyId", + "description": "The global signout callback (use with IndividualB2C auth)." + }, + "ResetPasswordPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_reset", + "replaces": "MyResetPasswordPolicyId", + "description": "The reset password policy ID for this project (use with IndividualB2C auth)." + }, + "EditProfilePolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_edit_profile", + "replaces": "MyEditProfilePolicyId", + "description": "The edit profile policy ID for this project (use with IndividualB2C auth)." + }, + "AADInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/", + "replaces": "https:////login.microsoftonline.com/", + "description": "The Azure Active Directory instance to connect to (use with SingleOrg or MultiOrg auth)." + }, + "ClientId": { + "type": "parameter", + "datatype": "string", + "replaces": "11111111-1111-1111-11111111111111111", + "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or MultiOrg auth)." + }, + "Domain": { + "type": "parameter", + "datatype": "string", + "replaces": "qualified.domain.name", + "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." + }, + "TenantId": { + "type": "parameter", + "datatype": "string", + "replaces": "22222222-2222-2222-2222-222222222222", + "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." + }, + "CallbackPath": { + "type": "parameter", + "datatype": "string", + "replaces": "/signin-oidc", + "defaultValue": "/signin-oidc", + "description": "The request path within the application's base path of the redirect URI (use with SingleOrg or IndividualB2C auth)." + }, + "OrgReadAccess": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg or MultiOrg auth)." + }, + "UserSecretsId": { + "type": "parameter", + "datatype": "string", + "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json in the generated template." + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "OrganizationalAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" + }, + "WindowsAuth": { + "type": "computed", + "value": "(auth == \"Windows\")" + }, + "MultiOrgAuth": { + "type": "computed", + "value": "(auth == \"MultiOrg\")" + }, + "SingleOrgAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\")" + }, + "IndividualLocalAuth": { + "type": "computed", + "value": "(auth == \"Individual\")" + }, + "IndividualAuth": { + "type": "computed", + "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" + }, + "IndividualB2CAuth": { + "type": "computed", + "value": "(auth == \"IndividualB2C\")" + }, + "NoAuth": { + "type": "computed", + "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" + }, + "RequiresHttps": { + "type": "computed", + "value": "(OrganizationalAuth || IndividualB2CAuth)" + }, + "HasHttpProfile": { + "type": "computed", + "value": "(!RequiresHttps)" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(RequiresHttps || !NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + }, + "UseLocalDB": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "CalledApiUrl": { + "type": "parameter", + "datatype": "string", + "replaces": "[WebApiUrl]", + "defaultValue": "https://graph.microsoft.com/v1.0", + "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." + }, + "CallsMicrosoftGraph": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg or --auth MultiOrg is specified." + }, + "CalledApiScopes": { + "type": "parameter", + "datatype": "string", + "replaces": "user.read", + "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." + }, + "GenerateApi": { + "type": "computed", + "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" + }, + "GenerateGraph": { + "type": "computed", + "value": "(OrganizationalAuth && CallsMicrosoftGraph)" + }, + "GenerateApiOrGraph": { + "type": "computed", + "value": "(GenerateApi || GenerateGraph)" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.csproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json new file mode 100644 index 000000000000..79478ad13720 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-CSharp/.template.config/template.json @@ -0,0 +1,456 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "MVC" + ], + "name": "ASP.NET Core Web App (Model-View-Controller)", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core MVC Views and Controllers. This template can also be used for RESTful HTTP services.", + "groupIdentity": "Microsoft.Web.Mvc", + "precedence": "10000", + "identity": "Microsoft.Web.Mvc.CSharp.10.0", + "shortName": "mvc", + "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID + ], + "sources": [ + { + "copyOnly": [ + "wwwroot/**" + ], + "modifiers": [ + { + "condition": "(!OrganizationalAuth && !IndividualAuth)", + "exclude": [ + "Views/Shared/_LoginPartial.Identity.cshtml", + "Views/Shared/_LoginPartial.OrgAuth.cshtml" + ] + }, + { + "condition": "(OrganizationalAuth || IndividualB2CAuth)", + "rename": { + "Views/Shared/_LoginPartial.OrgAuth.cshtml": "Views/Shared/_LoginPartial.cshtml" + }, + "exclude": [ + "Views/Shared/_LoginPartial.Identity.cshtml" + ] + }, + { + "condition": "(IndividualLocalAuth)", + "rename": { + "Views/Shared/_LoginPartial.Identity.cshtml": "Views/Shared/_LoginPartial.cshtml" + }, + "exclude": [ + "Views/Shared/_LoginPartial.OrgAuth.cshtml" + ] + }, + { + "condition": "(!IndividualLocalAuth || UseLocalDB)", + "exclude": [ + "app.db" + ] + }, + { + "condition": "(!IndividualLocalAuth)", + "exclude": [ + "Data/**", + "Areas/**" + ] + }, + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(IndividualLocalAuth && UseLocalDB)", + "rename": { + "Data/SqlServer/": "Data/Migrations/" + }, + "exclude": [ + "Data/SqlLite/**" + ] + }, + { + "condition": "(IndividualLocalAuth && !UseLocalDB)", + "rename": { + "Data/SqlLite/": "Data/Migrations/" + }, + "exclude": [ + "Data/SqlServer/**" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "auth": { + "type": "parameter", + "datatype": "choice", + "choices": [ + { + "choice": "None", + "description": "No authentication" + }, + { + "choice": "Individual", + "description": "Individual authentication" + }, + { + "choice": "IndividualB2C", + "description": "Individual authentication with Azure AD B2C" + }, + { + "choice": "SingleOrg", + "description": "Organizational authentication for a single tenant" + }, + { + "choice": "MultiOrg", + "description": "Organizational authentication for multiple tenants" + }, + { + "choice": "Windows", + "description": "Windows authentication" + } + ], + "defaultValue": "None", + "description": "The type of authentication to use" + }, + "AAdB2CInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/tfp/", + "replaces": "https:////login.microsoftonline.com/tfp/", + "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." + }, + "SignUpSignInPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_susi", + "replaces": "MySignUpSignInPolicyId", + "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." + }, + "SignedOutCallbackPath": { + "type": "parameter", + "datatype": "string", + "defaultValue": "/signout/B2C_1_susi", + "replaces": "/signout/MySignUpSignInPolicyId", + "description": "The global signout callback (use with IndividualB2C auth)." + }, + "ResetPasswordPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_reset", + "replaces": "MyResetPasswordPolicyId", + "description": "The reset password policy ID for this project (use with IndividualB2C auth)." + }, + "EditProfilePolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_edit_profile", + "replaces": "MyEditProfilePolicyId", + "description": "The edit profile policy ID for this project (use with IndividualB2C auth)." + }, + "AADInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/", + "replaces": "https:////login.microsoftonline.com/", + "description": "The Azure Active Directory instance to connect to (use with SingleOrg or MultiOrg auth)." + }, + "ClientId": { + "type": "parameter", + "datatype": "string", + "replaces": "11111111-1111-1111-11111111111111111", + "description": "The Client ID for this project (use with IndividualB2C, SingleOrg or MultiOrg auth)." + }, + "Domain": { + "type": "parameter", + "datatype": "string", + "replaces": "qualified.domain.name", + "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." + }, + "TenantId": { + "type": "parameter", + "datatype": "string", + "replaces": "22222222-2222-2222-2222-222222222222", + "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." + }, + "CallbackPath": { + "type": "parameter", + "datatype": "string", + "replaces": "/signin-oidc", + "defaultValue": "/signin-oidc", + "description": "The request path within the application's base path of the redirect URI (use with SingleOrg or IndividualB2C auth)." + }, + "OrgReadAccess": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg or MultiOrg auth)." + }, + "UserSecretsId": { + "type": "parameter", + "datatype": "string", + "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "OrganizationalAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\" || auth == \"MultiOrg\")" + }, + "WindowsAuth": { + "type": "computed", + "value": "(auth == \"Windows\")" + }, + "MultiOrgAuth": { + "type": "computed", + "value": "(auth == \"MultiOrg\")" + }, + "SingleOrgAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\")" + }, + "IndividualLocalAuth": { + "type": "computed", + "value": "(auth == \"Individual\")" + }, + "IndividualAuth": { + "type": "computed", + "value": "(auth == \"Individual\" || auth == \"IndividualB2C\")" + }, + "IndividualB2CAuth": { + "type": "computed", + "value": "(auth == \"IndividualB2C\")" + }, + "NoAuth": { + "type": "computed", + "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" + }, + "RequiresHttps": { + "type": "computed", + "value": "(OrganizationalAuth || IndividualB2CAuth)" + }, + "HasHttpProfile": { + "type": "computed", + "value": "(!RequiresHttps)" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(RequiresHttps || !NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + }, + "UseLocalDB": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "CalledApiUrl": { + "type": "parameter", + "datatype": "string", + "replaces": "[WebApiUrl]", + "defaultValue": "https://graph.microsoft.com/v1.0", + "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." + }, + "CallsMicrosoftGraph": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg or --auth MultiOrg is specified." + }, + "CalledApiScopes": { + "type": "parameter", + "datatype": "string", + "replaces": "user.read", + "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg, --auth MultiOrg or --auth IndividualB2C is specified." + }, + "GenerateApi": { + "type": "computed", + "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" + }, + "GenerateGraph": { + "type": "computed", + "value": "(OrganizationalAuth && CallsMicrosoftGraph)" + }, + "GenerateApiOrGraph": { + "type": "computed", + "value": "(GenerateApi || GenerateGraph)" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.csproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json new file mode 100644 index 000000000000..7507fabddd48 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/StarterWeb-FSharp/.template.config/template.json @@ -0,0 +1,186 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "MVC" + ], + "name": "ASP.NET Core Web App (Model-View-Controller)", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating an ASP.NET Core application with example ASP.NET Core MVC Views and Controllers. This template can also be used for RESTful HTTP services.", + "groupIdentity": "Microsoft.Web.Mvc", + "precedence": "10000", + "identity": "Microsoft.Web.Mvc.FSharp.10.0", + "shortName": "mvc", + "thirdPartyNotices": "https://aka.ms/aspnetcore/10.0-third-party-notices", + "tags": { + "language": "F#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "sources": [ + { + "copyOnly": [ + "wwwroot/**" + ], + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualAuth or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(!NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if Individual, IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.fsproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json new file mode 100644 index 000000000000..c581b5457d40 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-CSharp/.template.config/template.json @@ -0,0 +1,438 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Web API", + "API", + "Service" + ], + "name": "ASP.NET Core Web API", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating a RESTful Web API using ASP.NET Core controllers or minimal APIs, with optional support for OpenAPI and authentication.", + "groupIdentity": "Microsoft.Web.WebApi", + "precedence": "10000", + "identity": "Microsoft.Web.WebApi.CSharp.10.0", + "shortName": "webapi", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" // Client ID + ], + "sources": [ + { + "modifiers": [ + { + "condition": "(windir == 'C:\\Windows')", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs", + "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs", + "Program.MinimalAPIs.WindowsOrNoAuth.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + }, + { + "condition": "(UsingMinimalAPIs)", + "exclude": [ + "Controllers/WeatherForecastController.cs" + ] + }, + { + "condition": "(UsingMinimalAPIs && !UseProgramMain)", + "exclude": [ + "WeatherForecast.cs" + ] + }, + { + "condition": "(!UseProgramMain && UsingMinimalAPIs && (NoAuth || WindowsAuth))", + "exclude": [ + "Program.cs", + "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs" + ], + "rename": { + "Program.MinimalAPIs.WindowsOrNoAuth.cs": "Program.cs" + } + }, + { + "condition": "(!UseProgramMain && UsingMinimalAPIs && (IndividualAuth || OrganizationalAuth))", + "exclude": [ + "Program.cs", + "Program.MinimalAPIs.WindowsOrNoAuth.cs" + ], + "rename": { + "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs": "Program.cs" + } + }, + { + "condition": "(UsingControllers)", + "exclude": [ + "Program.MinimalAPIs.WindowsOrNoAuth.cs", + "Program.MinimalAPIs.OrgOrIndividualB2CAuth.cs" + ] + } + ] + } + ], + "symbols": { + "auth": { + "type": "parameter", + "datatype": "choice", + "choices": [ + { + "choice": "None", + "description": "No authentication" + }, + { + "choice": "IndividualB2C", + "description": "Individual authentication with Azure AD B2C" + }, + { + "choice": "SingleOrg", + "description": "Organizational authentication for a single tenant" + }, + { + "choice": "Windows", + "description": "Windows authentication" + } + ], + "defaultValue": "None", + "description": "The type of authentication to use" + }, + "AAdB2CInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://qualified.domain.name.b2clogin.com/", + "replaces": "https:////qualified.domain.name.b2clogin.com/", + "description": "The Azure Active Directory B2C instance to connect to (use with IndividualB2C auth)." + }, + "SignUpSignInPolicyId": { + "type": "parameter", + "datatype": "string", + "defaultValue": "b2c_1_susi", + "replaces": "MySignUpSignInPolicyId", + "description": "The sign-in and sign-up policy ID for this project (use with IndividualB2C auth)." + }, + "AADInstance": { + "type": "parameter", + "datatype": "string", + "defaultValue": "https://login.microsoftonline.com/", + "replaces": "https:////login.microsoftonline.com/", + "description": "The Azure Active Directory instance to connect to (use with SingleOrg auth)." + }, + "ClientId": { + "type": "parameter", + "datatype": "string", + "replaces": "11111111-1111-1111-11111111111111111", + "description": "The Client ID for this project (use with SingleOrg or IndividualB2C auth)." + }, + "Domain": { + "type": "parameter", + "datatype": "string", + "replaces": "qualified.domain.name", + "description": "The domain for the directory tenant (use with SingleOrg or IndividualB2C auth)." + }, + "DefaultScope": { + "type": "parameter", + "datatype": "string", + "replaces": "api-scope", + "defaultValue": "access_as_user", + "description": "The API scope the client needs to request to provision an access token. (use with IndividualB2C, SingleOrg)." + }, + "TenantId": { + "type": "parameter", + "datatype": "string", + "replaces": "22222222-2222-2222-2222-222222222222", + "description": "The TenantId ID of the directory to connect to (use with SingleOrg auth)." + }, + "OrgReadAccess": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether or not to allow this application read access to the directory (only applies to SingleOrg auth)." + }, + "UserSecretsId": { + "type": "parameter", + "datatype": "string", + "replaces": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "defaultValue": "aspnet-Company.WebApplication1-53bc9b9d-9d6a-45d4-8429-2a2761773502", + "description": "The ID to use for secrets (use with OrgReadAccess or Individual auth)." + }, + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json in the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json. This option is only applicable when the parameter no-https is not used (no-https will be ignored if either IndividualB2C or OrganizationalAuth is used)." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "OrganizationalAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\")" + }, + "WindowsAuth": { + "type": "computed", + "value": "(auth == \"Windows\")" + }, + "SingleOrgAuth": { + "type": "computed", + "value": "(auth == \"SingleOrg\")" + }, + "IndividualAuth": { + "type": "computed", + "value": "(auth == \"IndividualB2C\")" + }, + "IndividualB2CAuth": { + "type": "computed", + "value": "(auth == \"IndividualB2C\")" + }, + "NoAuth": { + "type": "computed", + "value": "(!(IndividualAuth || OrganizationalAuth || WindowsAuth))" + }, + "RequiresHttps": { + "type": "computed", + "value": "(OrganizationalAuth || IndividualB2CAuth)" + }, + "HasHttpProfile": { + "type": "computed", + "value": "(!RequiresHttps)" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(RequiresHttps || !NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS. This option only applies if IndividualB2C, SingleOrg, or MultiOrg aren't used for --auth." + }, + "UseLocalDB": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use LocalDB instead of SQLite. This option only applies if --auth Individual or --auth IndividualB2C is specified." + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "CalledApiUrl": { + "type": "parameter", + "datatype": "string", + "replaces": "[WebApiUrl]", + "defaultValue": "https://graph.microsoft.com/v1.0", + "description": "URL of the API to call from the web app. This option only applies if --auth SingleOrg or --auth IndividualB2C is specified." + }, + "CallsMicrosoftGraph": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Specifies if the web app calls Microsoft Graph. This option only applies if --auth SingleOrg is specified." + }, + "CalledApiScopes": { + "type": "parameter", + "datatype": "string", + "replaces": "user.read", + "description": "Scopes to request to call the API from the web app. This option only applies if --auth SingleOrg or --auth IndividualB2C is specified." + }, + "GenerateApi": { + "type": "computed", + "value": "((IndividualB2CAuth || OrganizationalAuth) && (CalledApiUrl != \"https://graph.microsoft.com/v1.0\" || CalledApiScopes != \"user.read\"))" + }, + "GenerateGraph": { + "type": "computed", + "value": "(OrganizationalAuth && CallsMicrosoftGraph)" + }, + "GenerateApiOrGraph": { + "type": "computed", + "value": "(GenerateApi || GenerateGraph)" + }, + "DisableOpenAPI": { + "type": "parameter", + "dataType": "bool", + "defaultValue": "false", + "description": "Disable OpenAPI (Swagger) support" + }, + "EnableOpenAPI": { + "type": "computed", + "value": "(!DisableOpenAPI)" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "UseMinimalAPIs": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "true", + "description": "Whether to use minimal APIs instead of controllers." + }, + "UseControllers": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to use controllers instead of minimal APIs. This option overides the value specified by --minimal." + }, + "UsingControllers": { + "type": "computed", + "value": "(UseControllers || !UseMinimalAPIs)" + }, + "UsingMinimalAPIs": { + "type": "computed", + "value": "(!UsingControllers)" + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.csproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json new file mode 100644 index 000000000000..ae7a8a90a4e4 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApi-FSharp/.template.config/template.json @@ -0,0 +1,181 @@ +{ + "author": "Microsoft", + "classifications": [ + "Web", + "Web API" + ], + "name": "ASP.NET Core Web API", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating an ASP.NET Core application with an example Controller for a RESTful HTTP service. This template can also be used for ASP.NET Core MVC Views and Controllers.", + "groupIdentity": "Microsoft.Web.WebApi", + "precedence": "10000", + "identity": "Microsoft.Web.WebApi.FSharp.10.0", + "shortName": "webapi", + "tags": { + "language": "F#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "kestrelHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTPS endpoint in launchSettings.json." + }, + "kestrelHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 7000, + "high": 7300 + } + }, + "kestrelHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpsPort", + "fallbackVariableName": "kestrelHttpsPortGenerated" + }, + "replaces": "5001" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "iisHttpsPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTPS endpoint in launchSettings.json." + }, + "iisHttpsPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 44300, + "high": 44399 + } + }, + "iisHttpsPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpsPort", + "fallbackVariableName": "iisHttpsPortGenerated" + }, + "replaces": "44300" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "HasHttpsProfile": { + "type": "computed", + "value": "(!NoHttps)" + }, + "NoHttps": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to turn off HTTPS." + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.fsproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json new file mode 100644 index 000000000000..a4b53862f6ea --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/WebApiAot-CSharp/.template.config/template.json @@ -0,0 +1,165 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Web", + "Web API", + "API", + "Service" + ], + "name": "ASP.NET Core Web API (native AOT)", + "generatorVersions": "[1.0.0.0-*)", + "description": "A project template for creating a RESTful Web API using ASP.NET Core minimal APIs published as native AOT, with optional support for OpenAPI.", + "groupIdentity": "Microsoft.Web.WebApiAot", + "precedence": "10000", + "identity": "Microsoft.Web.WebApiAot.CSharp.10.0", + "shortName": "webapiaot", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.WebApplication1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" + ], + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "kestrelHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the HTTP endpoint in launchSettings.json." + }, + "kestrelHttpPortGenerated": { + "type": "generated", + "generator": "port", + "parameters": { + "low": 5000, + "high": 5300 + } + }, + "kestrelHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "kestrelHttpPort", + "fallbackVariableName": "kestrelHttpPortGenerated" + }, + "replaces": "5000" + }, + "iisHttpPort": { + "type": "parameter", + "datatype": "integer", + "description": "Port number to use for the IIS Express HTTP endpoint in launchSettings.json." + }, + "iisHttpPortGenerated": { + "type": "generated", + "generator": "port" + }, + "iisHttpPortReplacer": { + "type": "generated", + "generator": "coalesce", + "parameters": { + "sourceVariableName": "iisHttpPort", + "fallbackVariableName": "iisHttpPortGenerated" + }, + "replaces": "8080" + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "DisableOpenAPI": { + "type": "parameter", + "dataType": "bool", + "defaultValue": "false", + "description": "Disable OpenAPI (Swagger) support" + }, + "EnableOpenAPI": { + "type": "computed", + "value": "(!DisableOpenAPI)" + } + }, + "primaryOutputs": [ + { + "path": "Company.WebApplication1.csproj" + } + ], + "defaultName": "WebApplication", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json new file mode 100644 index 000000000000..934552d8bfca --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-CSharp/.template.config/template.json @@ -0,0 +1,121 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Common", + "Worker", + "Web" + ], + "name": "Worker Service", + "generatorVersions": "[1.0.0.0-*)", + "description": "An empty project template for creating a worker service.", + "groupIdentity": "Microsoft.Worker.Empty", + "precedence": "10000", + "identity": "Microsoft.Worker.Empty.CSharp.10.0", + "shortName": "worker", + "tags": { + "language": "C#", + "type": "project" + }, + "sourceName": "Company.Application1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" + ], + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + }, + { + "condition": "(!UseProgramMain)", + "exclude": [ + "Program.Main.cs" + ] + }, + { + "condition": "(UseProgramMain)", + "exclude": [ + "Program.cs" + ], + "rename": { + "Program.Main.cs": "Program.cs" + } + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + }, + "UseProgramMain": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Do not use _top-level statements", + "description": "Whether to generate an explicit Program class and Main method instead of top-level statements." + }, + "NativeAot" : { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "displayName": "Enable _native AOT publish", + "description": "Whether to enable the project for publishing as native AOT." + } + }, + "primaryOutputs": [ + { + "path": "Company.Application1.csproj" + } + ], + "defaultName": "WorkerService", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json new file mode 100644 index 000000000000..2215f34b7ca2 --- /dev/null +++ b/src/ProjectTemplates/Web.ProjectTemplates/content/Worker-FSharp/.template.config/template.json @@ -0,0 +1,92 @@ +{ + "$schema": "https://json.schemastore.org/template", + "author": "Microsoft", + "classifications": [ + "Common", + "Worker", + "Web" + ], + "name": "Worker Service", + "generatorVersions": "[1.0.0.0-*)", + "description": "An empty project template for creating a worker service.", + "groupIdentity": "Microsoft.Worker.Empty", + "precedence": "10000", + "identity": "Microsoft.Worker.Empty.FSharp.10.0", + "shortName": "worker", + "tags": { + "language": "F#", + "type": "project" + }, + "sourceName": "Company.Application1", + "preferNameDirectory": true, + "guids": [ + "53bc9b9d-9d6a-45d4-8429-2a2761773502" + ], + "sources": [ + { + "modifiers": [ + { + "condition": "(ExcludeLaunchSettings)", + "exclude": [ + "Properties/launchSettings.json" + ] + } + ] + } + ], + "symbols": { + "ExcludeLaunchSettings": { + "type": "parameter", + "datatype": "bool", + "defaultValue": "false", + "description": "Whether to exclude launchSettings.json from the generated template." + }, + "Framework": { + "type": "parameter", + "description": "The target framework for the project.", + "datatype": "choice", + "choices": [ + { + "choice": "net10.0", + "description": "Target net10.0" + } + ], + "replaces": "net10.0", + "defaultValue": "net10.0" + }, + "copyrightYear": { + "type": "generated", + "generator": "now", + "replaces": "copyrightYear", + "parameters": { + "format": "yyyy" + } + }, + "skipRestore": { + "type": "parameter", + "datatype": "bool", + "description": "If specified, skips the automatic restore of the project on create.", + "defaultValue": "false" + } + }, + "primaryOutputs": [ + { + "path": "Company.Application1.fsproj" + } + ], + "defaultName": "WorkerService", + "postActions": [ + { + "id": "restore", + "condition": "(!skipRestore)", + "description": "Restore NuGet packages required by this project.", + "manualInstructions": [ + { + "text": "Run 'dotnet restore'" + } + ], + "actionId": "210D431B-A78B-4D2F-B762-4ED3E3EA9025", + "continueOnError": true + } + ] +} diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs index b5fc2ac2658b..ef46a52f7bac 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Auth.Tests/BlazorWasmTemplateAuthTest.cs @@ -1,59 +1,19 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -using System; -using System.Linq; -using System.Threading.Tasks; using Microsoft.AspNetCore.InternalTesting; -using Microsoft.Extensions.Logging; using Templates.Test.Helpers; -using Xunit.Abstractions; namespace Templates.Blazor.Test; #pragma warning disable xUnit1041 // Fixture arguments to test classes must have fixture sources -public class BlazorWasmTemplateAuthTest : LoggedTest +public class BlazorWasmTemplateAuthTest : BlazorTemplateTest { public BlazorWasmTemplateAuthTest(ProjectFactoryFixture projectFactory) - { - ProjectFactory = projectFactory; - } - - public ProjectFactoryFixture ProjectFactory { get; set; } - - private ITestOutputHelper _output; - public ITestOutputHelper Output - { - get - { - if (_output == null) - { - _output = new TestOutputLogger(Logger); - } - return _output; - } - } + : base(projectFactory) { } - public string ProjectType { get; } = "blazorwasm"; - - protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null) - { - // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 - Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); - - var project = await ProjectFactory.CreateProject(Output); - if (targetFramework != null) - { - project.TargetFramework = targetFramework; - } - - await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); - - await project.RunDotNetPublishAsync(noRestore: false); - - return project; - } + public override string ProjectType { get; } = "blazorwasm"; [Fact] public async Task BlazorWasmStandaloneTemplate_IndividualAuth_CreateBuildPublish() @@ -154,26 +114,3 @@ public Task BlazorWasmStandaloneTemplate_AzureActiveDirectoryTemplate_SingleOrg_ public Task BlazorWasmStandaloneTemplate_AzureActiveDirectoryTemplate_SingleOrg_NoHttps_ProgramMain_Works(TemplateInstance instance) => CreateBuildPublishAsync(auth: instance.Auth, args: instance.Arguments.Union(new[] { ArgConstants.NoHttps }).ToArray(), targetFramework: "netstandard2.1"); } - -internal sealed class TestOutputLogger : ITestOutputHelper -{ - private readonly ILogger _logger; - - public TestOutputLogger(ILogger logger) - { - _logger = logger; - } - - public void WriteLine(string message) - { - _logger.LogInformation(message); - } - - public void WriteLine(string format, params object[] args) - { - if (_logger.IsEnabled(LogLevel.Information)) - { - _logger.LogInformation(string.Format(System.Globalization.CultureInfo.InvariantCulture, format, args)); - } - } -} diff --git a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs index c32442136352..9fbc9ae02110 100644 --- a/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs +++ b/src/ProjectTemplates/test/Templates.Blazor.WebAssembly.Tests/BlazorWasmTemplateTest.cs @@ -9,7 +9,6 @@ using System.Text.RegularExpressions; using System.Threading.Tasks; using Microsoft.AspNetCore.InternalTesting; -using Microsoft.Extensions.Logging; using Newtonsoft.Json.Linq; using Templates.Test.Helpers; using Xunit; @@ -20,47 +19,12 @@ namespace Templates.Blazor.Test; #pragma warning disable xUnit1041 // Fixture arguments to test classes must have fixture sources -public class BlazorWasmTemplateTest : LoggedTest +public class BlazorWasmTemplateTest : BlazorTemplateTest { public BlazorWasmTemplateTest(ProjectFactoryFixture projectFactory) - { - ProjectFactory = projectFactory; - } - - public ProjectFactoryFixture ProjectFactory { get; set; } - - private ITestOutputHelper _output; - public ITestOutputHelper Output - { - get - { - if (_output == null) - { - _output = new TestOutputLogger(Logger); - } - return _output; - } - } - - public string ProjectType { get; } = "blazorwasm"; + : base(projectFactory) { } - protected async Task CreateBuildPublishAsync(string auth = null, string[] args = null, string targetFramework = null) - { - // Additional arguments are needed. See: https://github.com/dotnet/aspnetcore/issues/24278 - Environment.SetEnvironmentVariable("EnableDefaultScopedCssItems", "true"); - - var project = await ProjectFactory.CreateProject(Output); - if (targetFramework != null) - { - project.TargetFramework = targetFramework; - } - - await project.RunDotNetNewAsync(ProjectType, auth: auth, args: args, errorOnRestoreError: false); - - await project.RunDotNetPublishAsync(noRestore: false); - - return project; - } + public override string ProjectType { get; } = "blazorwasm"; [Fact] public async Task BlazorWasmStandaloneTemplateCanCreateBuildPublish() @@ -118,26 +82,3 @@ public Task BlazorWasmStandalonePwaTemplateNoHttpsCanCreateBuildPublish() public Task BlazorWasmStandalonePwaEmptyTemplateNoHttpsCanCreateBuildPublish() => CreateBuildPublishAsync(args: new[] { ArgConstants.Pwa, ArgConstants.NoHttps, ArgConstants.Empty }); } - -internal sealed class TestOutputLogger : ITestOutputHelper -{ - private readonly ILogger _logger; - - public TestOutputLogger(ILogger logger) - { - _logger = logger; - } - - public void WriteLine(string message) - { - _logger.LogInformation(message); - } - - public void WriteLine(string format, params object[] args) - { - if (_logger.IsEnabled(LogLevel.Information)) - { - _logger.LogInformation(string.Format(System.Globalization.CultureInfo.InvariantCulture, format, args)); - } - } -}