From 080e25e36fa63671cd2b6965d89e6c4263fd89c2 Mon Sep 17 00:00:00 2001 From: Taiizor <41683699+Taiizor@users.noreply.github.com> Date: Sun, 11 May 2025 05:47:52 +0300 Subject: [PATCH 1/5] Add ASP.NET template support Introduced a new ASP.NET template for project scaffolding, including necessary files and configurations. Updated the template matrix, README files, and package manager logic to support the new template. This addition enables developers to scaffold ASP.NET projects with Tauri integration. --- .scripts/generate-templates-matrix.js | 2 +- README.md | 2 + node/README.md | 1 + src/package_manager.rs | 10 +- src/template.rs | 13 +- templates/_assets_/aspnet.svg | 1 + templates/template-aspnet/.manifest | 10 + templates/template-aspnet/_gitignore | 484 ++++++++++++++++++ .../src/Controllers/HomeController.cs.lte | 33 ++ .../src/Models/ErrorViewModel.cs.lte | 9 + templates/template-aspnet/src/Program.cs.lte | 27 + .../src/Properties/launchSettings.json | 14 + .../src/Views/Home/Index.cshtml.lte | 40 ++ .../src/Views/Shared/Error.cshtml.lte | 20 + .../src/Views/Shared/_Layout.cshtml.lte | 13 + .../src/Views/_ViewImports.cshtml.lte | 4 + .../src/Views/_ViewStart.cshtml | 3 + .../src/appsettings.Development.json | 8 + .../template-aspnet/src/appsettings.json | 9 + .../template-aspnet/src/wwwroot/css/app.css | 3 + .../src/{% project_name_pascal_case %}.csproj | 9 + 21 files changed, 707 insertions(+), 8 deletions(-) create mode 100644 templates/_assets_/aspnet.svg create mode 100644 templates/template-aspnet/.manifest create mode 100644 templates/template-aspnet/_gitignore create mode 100644 templates/template-aspnet/src/Controllers/HomeController.cs.lte create mode 100644 templates/template-aspnet/src/Models/ErrorViewModel.cs.lte create mode 100644 templates/template-aspnet/src/Program.cs.lte create mode 100644 templates/template-aspnet/src/Properties/launchSettings.json create mode 100644 templates/template-aspnet/src/Views/Home/Index.cshtml.lte create mode 100644 templates/template-aspnet/src/Views/Shared/Error.cshtml.lte create mode 100644 templates/template-aspnet/src/Views/Shared/_Layout.cshtml.lte create mode 100644 templates/template-aspnet/src/Views/_ViewImports.cshtml.lte create mode 100644 templates/template-aspnet/src/Views/_ViewStart.cshtml create mode 100644 templates/template-aspnet/src/appsettings.Development.json create mode 100644 templates/template-aspnet/src/appsettings.json create mode 100644 templates/template-aspnet/src/wwwroot/css/app.css create mode 100644 templates/template-aspnet/src/{% project_name_pascal_case %}.csproj diff --git a/.scripts/generate-templates-matrix.js b/.scripts/generate-templates-matrix.js index 7b58c936e6..eb2835cfb4 100644 --- a/.scripts/generate-templates-matrix.js +++ b/.scripts/generate-templates-matrix.js @@ -61,7 +61,7 @@ const matrixConfig = [ manager: "dotnet", install_cmd: "", run_cmd: "cargo", - templates: ["blazor"], + templates: ["aspnet", "blazor"], }, ]; diff --git a/README.md b/README.md index 08b9ef54e1..a7aef9de12 100644 --- a/README.md +++ b/README.md @@ -131,6 +131,7 @@ Follow along with the prompts to choose your project name, frontend language, pa ``` ? Choose your UI template › + AspNet (https://dotnet.microsoft.com/en-us/apps/aspnet/) Blazor (https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor/) ``` @@ -181,6 +182,7 @@ Currently supported template presets include: - `yew` - `leptos` - `sycamore` +- `aspnet` - `blazor` You can use `.` for the project name to scaffold in the current directory. diff --git a/node/README.md b/node/README.md index abed4b7253..3e43f91e0b 100644 --- a/node/README.md +++ b/node/README.md @@ -76,6 +76,7 @@ Currently supported template presets include: - `yew` - `leptos` - `sycamore` +- `aspnet` - `blazor` You can use `.` for the project name to scaffold in the current directory. diff --git a/src/package_manager.rs b/src/package_manager.rs index b912dc196f..6af017761c 100644 --- a/src/package_manager.rs +++ b/src/package_manager.rs @@ -101,7 +101,10 @@ impl PackageManager { Template::Angular, Template::Preact, ], - PackageManager::Dotnet => &[Template::Blazor], + PackageManager::Dotnet => &[ + Template::AspNet, + Template::Blazor + ], } } @@ -133,7 +136,10 @@ impl PackageManager { Template::Preact, Template::PreactTs, ], - PackageManager::Dotnet => &[Template::Blazor], + PackageManager::Dotnet => &[ + Template::AspNet, + Template::Blazor + ], } } diff --git a/src/template.rs b/src/template.rs index 952ca51ab5..093a4955a1 100644 --- a/src/template.rs +++ b/src/template.rs @@ -60,6 +60,7 @@ pub enum Template { PreactTs, Blazor, Dioxus, + AspNet, } impl Display for Template { @@ -83,6 +84,7 @@ impl Display for Template { Template::PreactTs => write!(f, "preact-ts"), Template::Blazor => write!(f, "blazor"), Template::Dioxus => write!(f, "dioxus"), + Template::AspNet => write!(f, "aspnet"), } } } @@ -109,6 +111,7 @@ impl FromStr for Template { "preact-ts" => Ok(Template::PreactTs), "blazor" => Ok(Template::Blazor), "dioxus" => Ok(Template::Dioxus), + "aspnet" => Ok(Template::AspNet), _ => Err(format!( "{YELLOW}{s}{RESET} is not a valid template. Valid templates are [{}]", Template::ALL @@ -134,10 +137,9 @@ impl Template { Template::Sycamore => "Sycamore - (https://sycamore-rs.netlify.app/)", Template::Angular => "Angular - (https://angular.dev/)", Template::Preact => "Preact - (https://preactjs.com/)", - Template::Blazor => { - "Blazor - (https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor/)" - } + Template::Blazor => "Blazor - (https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor/)", Template::Dioxus => "Dioxus - (https://dioxuslabs.com/)", + Template::AspNet => "AspNet - (https://dotnet.microsoft.com/en-us/apps/aspnet/)", _ => unreachable!(), } } @@ -163,6 +165,7 @@ impl<'a> Template { Template::PreactTs, Template::Blazor, Template::Dioxus, + Template::AspNet, ]; pub fn flavors<'b>(&self, pkg_manager: PackageManager) -> Option<&'b [Flavor]> { @@ -231,7 +234,7 @@ impl<'a> Template { Template::Yew | Template::Leptos | Template::Sycamore | Template::Dioxus => { &[PackageManager::Cargo] } - Template::Blazor => &[PackageManager::Dotnet], + Template::AspNet | Template::Blazor => &[PackageManager::Dotnet], } } @@ -251,7 +254,7 @@ impl<'a> Template { } pub const fn needs_dotnet(&self) -> bool { - matches!(self, Template::Blazor) + matches!(self, Template::AspNet | Template::Blazor) } pub const fn needs_dioxus_cli(&self) -> bool { diff --git a/templates/_assets_/aspnet.svg b/templates/_assets_/aspnet.svg new file mode 100644 index 0000000000..a4fbe04ff1 --- /dev/null +++ b/templates/_assets_/aspnet.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/templates/template-aspnet/.manifest b/templates/template-aspnet/.manifest new file mode 100644 index 0000000000..84045a8bc3 --- /dev/null +++ b/templates/template-aspnet/.manifest @@ -0,0 +1,10 @@ +beforeDevCommand = dotnet watch run --project src/{% project_name_pascal_case %}.csproj +beforeBuildCommand = dotnet publish -c release src/{% project_name_pascal_case %}.csproj -o dist +devUrl = http://localhost:1420 +frontendDist = ../dist/wwwroot +withGlobalTauri = true + +[files] +styles.css = src/wwwroot/css/app.css +tauri.svg = src/wwwroot/img/tauri.svg +aspnet.svg = src/wwwroot/img/aspnet.svg \ No newline at end of file diff --git a/templates/template-aspnet/_gitignore b/templates/template-aspnet/_gitignore new file mode 100644 index 0000000000..104b54414e --- /dev/null +++ b/templates/template-aspnet/_gitignore @@ -0,0 +1,484 @@ +## Ignore Visual Studio temporary files, build results, and +## files generated by popular Visual Studio add-ons. +## +## Get latest from `dotnet new gitignore` + +# dotenv files +.env + +# User-specific files +*.rsuser +*.suo +*.user +*.userosscache +*.sln.docstates + +# User-specific files (MonoDevelop/Xamarin Studio) +*.userprefs + +# Mono auto generated files +mono_crash.* + +# Build results +[Dd]ebug/ +[Dd]ebugPublic/ +[Rr]elease/ +[Rr]eleases/ +x64/ +x86/ +[Ww][Ii][Nn]32/ +[Aa][Rr][Mm]/ +[Aa][Rr][Mm]64/ +bld/ +[Bb]in/ +[Oo]bj/ +[Ll]og/ +[Ll]ogs/ + +# Visual Studio 2015/2017 cache/options directory +.vs/ +# Uncomment if you have tasks that create the project's static files in wwwroot +#wwwroot/ + +# Visual Studio 2017 auto generated files +Generated\ Files/ + +# MSTest test Results +[Tt]est[Rr]esult*/ +[Bb]uild[Ll]og.* + +# NUnit +*.VisualState.xml +TestResult.xml +nunit-*.xml + +# Build Results of an ATL Project +[Dd]ebugPS/ +[Rr]eleasePS/ +dlldata.c + +# Benchmark Results +BenchmarkDotNet.Artifacts/ + +# .NET +project.lock.json +project.fragment.lock.json +artifacts/ + +# Tye +.tye/ + +# ASP.NET Scaffolding +ScaffoldingReadMe.txt + +# StyleCop +StyleCopReport.xml + +# Files built by Visual Studio +*_i.c +*_p.c +*_h.h +*.ilk +*.meta +*.obj +*.iobj +*.pch +*.pdb +*.ipdb +*.pgc +*.pgd +*.rsp +*.sbr +*.tlb +*.tli +*.tlh +*.tmp +*.tmp_proj +*_wpftmp.csproj +*.log +*.tlog +*.vspscc +*.vssscc +.builds +*.pidb +*.svclog +*.scc + +# Chutzpah Test files +_Chutzpah* + +# Visual C++ cache files +ipch/ +*.aps +*.ncb +*.opendb +*.opensdf +*.sdf +*.cachefile +*.VC.db +*.VC.VC.opendb + +# Visual Studio profiler +*.psess +*.vsp +*.vspx +*.sap + +# Visual Studio Trace Files +*.e2e + +# TFS 2012 Local Workspace +$tf/ + +# Guidance Automation Toolkit +*.gpState + +# ReSharper is a .NET coding add-in +_ReSharper*/ +*.[Rr]e[Ss]harper +*.DotSettings.user + +# TeamCity is a build add-in +_TeamCity* + +# DotCover is a Code Coverage Tool +*.dotCover + +# AxoCover is a Code Coverage Tool +.axoCover/* +!.axoCover/settings.json + +# Coverlet is a free, cross platform Code Coverage Tool +coverage*.json +coverage*.xml +coverage*.info + +# Visual Studio code coverage results +*.coverage +*.coveragexml + +# NCrunch +_NCrunch_* +.*crunch*.local.xml +nCrunchTemp_* + +# MightyMoose +*.mm.* +AutoTest.Net/ + +# Web workbench (sass) +.sass-cache/ + +# Installshield output folder +[Ee]xpress/ + +# DocProject is a documentation generator add-in +DocProject/buildhelp/ +DocProject/Help/*.HxT +DocProject/Help/*.HxC +DocProject/Help/*.hhc +DocProject/Help/*.hhk +DocProject/Help/*.hhp +DocProject/Help/Html2 +DocProject/Help/html + +# Click-Once directory +publish/ + +# Publish Web Output +*.[Pp]ublish.xml +*.azurePubxml +# Note: Comment the next line if you want to checkin your web deploy settings, +# but database connection strings (with potential passwords) will be unencrypted +*.pubxml +*.publishproj + +# Microsoft Azure Web App publish settings. Comment the next line if you want to +# checkin your Azure Web App publish settings, but sensitive information contained +# in these scripts will be unencrypted +PublishScripts/ + +# NuGet Packages +*.nupkg +# NuGet Symbol Packages +*.snupkg +# The packages folder can be ignored because of Package Restore +**/[Pp]ackages/* +# except build/, which is used as an MSBuild target. +!**/[Pp]ackages/build/ +# Uncomment if necessary however generally it will be regenerated when needed +#!**/[Pp]ackages/repositories.config +# NuGet v3's project.json files produces more ignorable files +*.nuget.props +*.nuget.targets + +# Microsoft Azure Build Output +csx/ +*.build.csdef + +# Microsoft Azure Emulator +ecf/ +rcf/ + +# Windows Store app package directories and files +AppPackages/ +BundleArtifacts/ +Package.StoreAssociation.xml +_pkginfo.txt +*.appx +*.appxbundle +*.appxupload + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!?*.[Cc]ache/ + +# Others +ClientBin/ +~$* +*~ +*.dbmdl +*.dbproj.schemaview +*.jfm +*.pfx +*.publishsettings +orleans.codegen.cs + +# Including strong name files can present a security risk +# (https://github.com/github/gitignore/pull/2483#issue-259490424) +#*.snk + +# Since there are multiple workflows, uncomment next line to ignore bower_components +# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622) +#bower_components/ + +# RIA/Silverlight projects +Generated_Code/ + +# Backup & report files from converting an old project file +# to a newer Visual Studio version. Backup files are not needed, +# because we have git ;-) +_UpgradeReport_Files/ +Backup*/ +UpgradeLog*.XML +UpgradeLog*.htm +ServiceFabricBackup/ +*.rptproj.bak + +# SQL Server files +*.mdf +*.ldf +*.ndf + +# Business Intelligence projects +*.rdl.data +*.bim.layout +*.bim_*.settings +*.rptproj.rsuser +*- [Bb]ackup.rdl +*- [Bb]ackup ([0-9]).rdl +*- [Bb]ackup ([0-9][0-9]).rdl + +# Microsoft Fakes +FakesAssemblies/ + +# GhostDoc plugin setting file +*.GhostDoc.xml + +# Node.js Tools for Visual Studio +.ntvs_analysis.dat +node_modules/ + +# Visual Studio 6 build log +*.plg + +# Visual Studio 6 workspace options file +*.opt + +# Visual Studio 6 auto-generated workspace file (contains which files were open etc.) +*.vbw + +# Visual Studio 6 auto-generated project file (contains which files were open etc.) +*.vbp + +# Visual Studio 6 workspace and project file (working project files containing files to include in project) +*.dsw +*.dsp + +# Visual Studio 6 technical files +*.ncb +*.aps + +# Visual Studio LightSwitch build output +**/*.HTMLClient/GeneratedArtifacts +**/*.DesktopClient/GeneratedArtifacts +**/*.DesktopClient/ModelManifest.xml +**/*.Server/GeneratedArtifacts +**/*.Server/ModelManifest.xml +_Pvt_Extensions + +# Paket dependency manager +.paket/paket.exe +paket-files/ + +# FAKE - F# Make +.fake/ + +# CodeRush personal settings +.cr/personal + +# Python Tools for Visual Studio (PTVS) +__pycache__/ +*.pyc + +# Cake - Uncomment if you are using it +# tools/** +# !tools/packages.config + +# Tabs Studio +*.tss + +# Telerik's JustMock configuration file +*.jmconfig + +# BizTalk build output +*.btp.cs +*.btm.cs +*.odx.cs +*.xsd.cs + +# OpenCover UI analysis results +OpenCover/ + +# Azure Stream Analytics local run output +ASALocalRun/ + +# MSBuild Binary and Structured Log +*.binlog + +# NVidia Nsight GPU debugger configuration file +*.nvuser + +# MFractors (Xamarin productivity tool) working folder +.mfractor/ + +# Local History for Visual Studio +.localhistory/ + +# Visual Studio History (VSHistory) files +.vshistory/ + +# BeatPulse healthcheck temp database +healthchecksdb + +# Backup folder for Package Reference Convert tool in Visual Studio 2017 +MigrationBackup/ + +# Ionide (cross platform F# VS Code tools) working folder +.ionide/ + +# Fody - auto-generated XML schema +FodyWeavers.xsd + +# VS Code files for those working on multiple tools +.vscode/* +!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +!.vscode/extensions.json +*.code-workspace + +# Local History for Visual Studio Code +.history/ + +# Windows Installer files from build outputs +*.cab +*.msi +*.msix +*.msm +*.msp + +# JetBrains Rider +*.sln.iml +.idea + +## +## Visual studio for Mac +## + + +# globs +Makefile.in +*.userprefs +*.usertasks +config.make +config.status +aclocal.m4 +install-sh +autom4te.cache/ +*.tar.gz +tarballs/ +test-results/ + +# Mac bundle stuff +*.dmg +*.app + +# content below from: https://github.com/github/gitignore/blob/master/Global/macOS.gitignore +# General +.DS_Store +.AppleDouble +.LSOverride + +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +# content below from: https://github.com/github/gitignore/blob/master/Global/Windows.gitignore +# Windows thumbnail cache files +Thumbs.db +ehthumbs.db +ehthumbs_vista.db + +# Dump file +*.stackdump + +# Folder config file +[Dd]esktop.ini + +# Recycle Bin used on file shares +$RECYCLE.BIN/ + +# Windows Installer files +*.cab +*.msi +*.msix +*.msm +*.msp + +# Windows shortcuts +*.lnk + +# Vim temporary swap files +*.swp diff --git a/templates/template-aspnet/src/Controllers/HomeController.cs.lte b/templates/template-aspnet/src/Controllers/HomeController.cs.lte new file mode 100644 index 0000000000..4ee3ef14a8 --- /dev/null +++ b/templates/template-aspnet/src/Controllers/HomeController.cs.lte @@ -0,0 +1,33 @@ +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Logging; +using System.Diagnostics; +using {% project_name_pascal_case %}.Models; + +namespace {% project_name_pascal_case %}.Controllers +{ + public class HomeController : Controller + { + private readonly ILogger _logger; + + public HomeController(ILogger logger) + { + _logger = logger; + } + + public IActionResult Index() + { + return View(); + } + + public IActionResult Privacy() + { + return View(); + } + + [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] + public IActionResult Error() + { + return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier }); + } + } +} \ No newline at end of file diff --git a/templates/template-aspnet/src/Models/ErrorViewModel.cs.lte b/templates/template-aspnet/src/Models/ErrorViewModel.cs.lte new file mode 100644 index 0000000000..8002cc1176 --- /dev/null +++ b/templates/template-aspnet/src/Models/ErrorViewModel.cs.lte @@ -0,0 +1,9 @@ +namespace {% project_name_pascal_case %}.Models +{ + public class ErrorViewModel + { + public string? RequestId { get; set; } + + public bool ShowRequestId => !string.IsNullOrEmpty(RequestId); + } +} \ No newline at end of file diff --git a/templates/template-aspnet/src/Program.cs.lte b/templates/template-aspnet/src/Program.cs.lte new file mode 100644 index 0000000000..a8129e18eb --- /dev/null +++ b/templates/template-aspnet/src/Program.cs.lte @@ -0,0 +1,27 @@ +using Microsoft.AspNetCore.Builder; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Hosting; + +WebApplicationBuilder builder = WebApplication.CreateBuilder(args); + +// Add services to the container. +builder.Services.AddControllersWithViews(); + +WebApplication app = builder.Build(); + +// Configure the HTTP request pipeline. +if (!app.Environment.IsDevelopment()) +{ + app.UseExceptionHandler("/Home/Error"); +} +app.UseStaticFiles(); + +app.UseRouting(); + +app.UseAuthorization(); + +app.MapControllerRoute( + name: "default", + pattern: "{controller=Home}/{action=Index}/{id?}"); + +app.Run(); \ No newline at end of file diff --git a/templates/template-aspnet/src/Properties/launchSettings.json b/templates/template-aspnet/src/Properties/launchSettings.json new file mode 100644 index 0000000000..8be4a53bfc --- /dev/null +++ b/templates/template-aspnet/src/Properties/launchSettings.json @@ -0,0 +1,14 @@ +{ + "$schema": "https://json.schemastore.org/launchsettings.json", + "profiles": { + "http": { + "commandName": "Project", + "dotnetRunMessages": true, + "launchBrowser": false, + "applicationUrl": "http://localhost:1420", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} \ No newline at end of file diff --git a/templates/template-aspnet/src/Views/Home/Index.cshtml.lte b/templates/template-aspnet/src/Views/Home/Index.cshtml.lte new file mode 100644 index 0000000000..f9ab49a7f8 --- /dev/null +++ b/templates/template-aspnet/src/Views/Home/Index.cshtml.lte @@ -0,0 +1,40 @@ +
+

Welcome to Tauri + ASP.NET

+ + +

Click on the Tauri and ASP.NET logos to learn more.

+ +
+ + +
+

+
+ +@section Scripts { + +} \ No newline at end of file diff --git a/templates/template-aspnet/src/Views/Shared/Error.cshtml.lte b/templates/template-aspnet/src/Views/Shared/Error.cshtml.lte new file mode 100644 index 0000000000..9ad3876965 --- /dev/null +++ b/templates/template-aspnet/src/Views/Shared/Error.cshtml.lte @@ -0,0 +1,20 @@ +@model {% project_name_pascal_case %}.Models.ErrorViewModel + +

Error.

+

An error occurred while processing your request.

+ +@if (Model.ShowRequestId) +{ +

+ Request ID: @Model.RequestId +

+} + +

Development Mode

+

+ Swapping to Development environment will display more detailed information about the error that occurred. +

+

+ The Development environment shouldn't be enabled for deployed applications. + It can result in displaying sensitive information from exceptions to end users. +

\ No newline at end of file diff --git a/templates/template-aspnet/src/Views/Shared/_Layout.cshtml.lte b/templates/template-aspnet/src/Views/Shared/_Layout.cshtml.lte new file mode 100644 index 0000000000..10b0aa0e46 --- /dev/null +++ b/templates/template-aspnet/src/Views/Shared/_Layout.cshtml.lte @@ -0,0 +1,13 @@ + + + + + Tauri + ASP.NET + + + + + @RenderBody() + @await RenderSectionAsync("Scripts", required: false) + + \ No newline at end of file diff --git a/templates/template-aspnet/src/Views/_ViewImports.cshtml.lte b/templates/template-aspnet/src/Views/_ViewImports.cshtml.lte new file mode 100644 index 0000000000..f595c1b52c --- /dev/null +++ b/templates/template-aspnet/src/Views/_ViewImports.cshtml.lte @@ -0,0 +1,4 @@ +@using {% project_name_pascal_case %} +@using {% project_name_pascal_case %}.Models + +@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers \ No newline at end of file diff --git a/templates/template-aspnet/src/Views/_ViewStart.cshtml b/templates/template-aspnet/src/Views/_ViewStart.cshtml new file mode 100644 index 0000000000..40c70bce23 --- /dev/null +++ b/templates/template-aspnet/src/Views/_ViewStart.cshtml @@ -0,0 +1,3 @@ +@{ + Layout = "_Layout"; +} \ No newline at end of file diff --git a/templates/template-aspnet/src/appsettings.Development.json b/templates/template-aspnet/src/appsettings.Development.json new file mode 100644 index 0000000000..ba0911747a --- /dev/null +++ b/templates/template-aspnet/src/appsettings.Development.json @@ -0,0 +1,8 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + } +} \ No newline at end of file diff --git a/templates/template-aspnet/src/appsettings.json b/templates/template-aspnet/src/appsettings.json new file mode 100644 index 0000000000..5687af1f3a --- /dev/null +++ b/templates/template-aspnet/src/appsettings.json @@ -0,0 +1,9 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Information", + "Microsoft.AspNetCore": "Warning" + } + }, + "AllowedHosts": "*" +} \ No newline at end of file diff --git a/templates/template-aspnet/src/wwwroot/css/app.css b/templates/template-aspnet/src/wwwroot/css/app.css new file mode 100644 index 0000000000..613e96c226 --- /dev/null +++ b/templates/template-aspnet/src/wwwroot/css/app.css @@ -0,0 +1,3 @@ +.logo.aspnet:hover { + filter: drop-shadow(0 0 2em #2ca1d9); +} diff --git a/templates/template-aspnet/src/{% project_name_pascal_case %}.csproj b/templates/template-aspnet/src/{% project_name_pascal_case %}.csproj new file mode 100644 index 0000000000..0cd4404f5c --- /dev/null +++ b/templates/template-aspnet/src/{% project_name_pascal_case %}.csproj @@ -0,0 +1,9 @@ + + + + net8.0 + disable + enable + + + \ No newline at end of file From cb5511c57bbec8053bbda9b05e027ec184e8d6e9 Mon Sep 17 00:00:00 2001 From: Taiizor <41683699+Taiizor@users.noreply.github.com> Date: Sun, 11 May 2025 05:52:06 +0300 Subject: [PATCH 2/5] Refactor ASP.NET template asset structure Moved 'aspnet.svg' from '_assets_' to 'src/wwwroot/img' in the ASP.NET template and updated the .manifest file to reflect the new location. This improves the organization of template assets. --- templates/template-aspnet/.manifest | 3 +-- .../{_assets_ => template-aspnet/src/wwwroot/img}/aspnet.svg | 0 2 files changed, 1 insertion(+), 2 deletions(-) rename templates/{_assets_ => template-aspnet/src/wwwroot/img}/aspnet.svg (100%) diff --git a/templates/template-aspnet/.manifest b/templates/template-aspnet/.manifest index 84045a8bc3..72eda2220c 100644 --- a/templates/template-aspnet/.manifest +++ b/templates/template-aspnet/.manifest @@ -6,5 +6,4 @@ withGlobalTauri = true [files] styles.css = src/wwwroot/css/app.css -tauri.svg = src/wwwroot/img/tauri.svg -aspnet.svg = src/wwwroot/img/aspnet.svg \ No newline at end of file +tauri.svg = src/wwwroot/img/tauri.svg \ No newline at end of file diff --git a/templates/_assets_/aspnet.svg b/templates/template-aspnet/src/wwwroot/img/aspnet.svg similarity index 100% rename from templates/_assets_/aspnet.svg rename to templates/template-aspnet/src/wwwroot/img/aspnet.svg From 478c729ba18bd63560937692e227fafe54ad6427 Mon Sep 17 00:00:00 2001 From: Taiizor <41683699+Taiizor@users.noreply.github.com> Date: Sun, 11 May 2025 20:38:09 +0300 Subject: [PATCH 3/5] Add Kestrel HTTP endpoint configuration Updated appsettings.Development.json and appsettings.json to include Kestrel HTTP endpoint configuration with URL 'http://*:1420'. This change ensures consistent endpoint settings for the application. --- .../template-aspnet/src/appsettings.Development.json | 7 +++++++ templates/template-aspnet/src/appsettings.json | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/templates/template-aspnet/src/appsettings.Development.json b/templates/template-aspnet/src/appsettings.Development.json index ba0911747a..6bab24123a 100644 --- a/templates/template-aspnet/src/appsettings.Development.json +++ b/templates/template-aspnet/src/appsettings.Development.json @@ -4,5 +4,12 @@ "Default": "Information", "Microsoft.AspNetCore": "Warning" } + }, + "Kestrel": { + "Endpoints": { + "Http": { + "Url": "http://*:1420" + } + } } } \ No newline at end of file diff --git a/templates/template-aspnet/src/appsettings.json b/templates/template-aspnet/src/appsettings.json index 5687af1f3a..9a4a7400f8 100644 --- a/templates/template-aspnet/src/appsettings.json +++ b/templates/template-aspnet/src/appsettings.json @@ -5,5 +5,12 @@ "Microsoft.AspNetCore": "Warning" } }, - "AllowedHosts": "*" + "AllowedHosts": "*", + "Kestrel": { + "Endpoints": { + "Http": { + "Url": "http://*:1420" + } + } + } } \ No newline at end of file From e38856b5ab71daebfaebeca5b910f9984538191a Mon Sep 17 00:00:00 2001 From: Taiizor <41683699+Taiizor@users.noreply.github.com> Date: Sun, 11 May 2025 20:49:26 +0300 Subject: [PATCH 4/5] Remove unused Privacy action from HomeController The Privacy action method was removed from HomeController as it is no longer used. This helps to clean up the code and improve maintainability. --- .../template-aspnet/src/Controllers/HomeController.cs.lte | 5 ----- 1 file changed, 5 deletions(-) diff --git a/templates/template-aspnet/src/Controllers/HomeController.cs.lte b/templates/template-aspnet/src/Controllers/HomeController.cs.lte index 4ee3ef14a8..1ba41e0e12 100644 --- a/templates/template-aspnet/src/Controllers/HomeController.cs.lte +++ b/templates/template-aspnet/src/Controllers/HomeController.cs.lte @@ -19,11 +19,6 @@ namespace {% project_name_pascal_case %}.Controllers return View(); } - public IActionResult Privacy() - { - return View(); - } - [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)] public IActionResult Error() { From 3d25c6a685554d566451d52b3c97fcf02319d764 Mon Sep 17 00:00:00 2001 From: Taiizor <41683699+Taiizor@users.noreply.github.com> Date: Sun, 11 May 2025 20:53:12 +0300 Subject: [PATCH 5/5] Remove appsettings files from ASP.NET template Deleted appsettings.Development.json and appsettings.json from the ASP.NET template. These files may have been removed to avoid hardcoding configuration or to centralize settings management. --- .../src/appsettings.Development.json | 15 --------------- templates/template-aspnet/src/appsettings.json | 16 ---------------- 2 files changed, 31 deletions(-) delete mode 100644 templates/template-aspnet/src/appsettings.Development.json delete mode 100644 templates/template-aspnet/src/appsettings.json diff --git a/templates/template-aspnet/src/appsettings.Development.json b/templates/template-aspnet/src/appsettings.Development.json deleted file mode 100644 index 6bab24123a..0000000000 --- a/templates/template-aspnet/src/appsettings.Development.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "Kestrel": { - "Endpoints": { - "Http": { - "Url": "http://*:1420" - } - } - } -} \ No newline at end of file diff --git a/templates/template-aspnet/src/appsettings.json b/templates/template-aspnet/src/appsettings.json deleted file mode 100644 index 9a4a7400f8..0000000000 --- a/templates/template-aspnet/src/appsettings.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Warning" - } - }, - "AllowedHosts": "*", - "Kestrel": { - "Endpoints": { - "Http": { - "Url": "http://*:1420" - } - } - } -} \ No newline at end of file