發表文章

目前顯示的是有「.NET Core」標籤的文章

asp.net core 6網站藉由Serilog上線添加只有在發生error跟例外的txt log檔並限制只保留2天以內的

圖片
  ~\Program.cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 using BingoSys.Data ; using BingoSys.Hubs ; using BingoSys.Services ; using Microsoft.AspNetCore.Identity ; using Microsoft.AspNetCore.Identity.UI.Services ; using Microsoft.EntityFrameworkCore ; using Serilog ; using Serilog.Events ; using System.Text.Encodings.Web ; using System.Text.Unicode ; var builder = WebApplication.CreateBuilder(args); // 初始化 Serilog,名稱像是 myapp_20231029.txt,定時只保留最近3天的日誌檔案 Log.Logger = new LoggerConfiguration() .MinimumLevel.Override( "Microsoft" , LogEventLevel.Warning) // 過濾 Microsoft 日誌 .MinimumLevel.Override( "Microsoft.EntityFrameworkCore" , LogEventLevel.Error) // 只有在出現錯誤時才記錄 EF Core 的日誌 .WriteTo.File( "logs/myapp_.txt" , rollingInterval: Rolling...

ec2 部署參考

Host ASP.NET Core on Linux with Apache https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-apache?view=aspnetcore-6.0 Host ASP.NET Core on Linux with Nginx https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-6.0&tabs=linux-ubuntu Publishing an asp.net core web application on linux ec2 instance https://learn.microsoft.com/en-us/answers/questions/1098005/publishing-an-asp-net-core-web-application-on-linu Hosting an ASP.NET Core Application on Amazon Linux 2 EC2 instance https://coderjony.com/blogs/hosting-aspnet-core-on-amazon-linux-ec2 Hosting ASP.NET Core WebAPI on Amazon EC2: Step-by-Step Guide https://codewithmukesh.com/blog/hosting-aspnet-core-webapi-on-amazon-ec2/ ASP.NET Core Application not Running in AWS Linux EC2 instance instead showing Apache Test Page https://stackoverflow.com/questions/74496039/asp-net-core-application-not-running-in-aws-linux-ec2-instance-instead-showing-a Deploying .NET Core Apps to Amazon Linux 2 ...

.NET Core第35天_整併signalr及peer.js(WebRTC)搭建的直播串流功能模組

圖片
使用.net6 mvc 在此先來更改一下預設範本的HomeController.cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 using Microsoft.AspNetCore.Mvc ; using System.Diagnostics ; namespace BingoSys.Controllers { public class HomeController : Controller { public IActionResult Index () { return Redirect ( $ "/{Guid.NewGuid()}" ); } [HttpGet("/{roomId}")] public IActionResult Room ( string roomId) { ViewBag.roomId = roomId; return View (); } } } 預設加入直播房空間都需要有一個獨一無二的id,在此用guid來實踐 接著到微軟signalr的文檔介紹 https://dotnet.microsoft.com/en-us/apps/aspnet/signalr Get Started 點入後 https://learn.microsoft.com/zh-tw/aspnet/core/tutorials/signalr?view=aspnetcore-6.0&WT.mc_id=dotnet-35129-website&tabs=visual-studio 新增用戶端連結 SignalR 庫 這裡我們透過libman來安裝client端需要的signalr js libman install @microsoft/signalr@latest -p unpkg -d wwwroot/js/signalr --files dist/browser/signalr.js --fi...

.NET Core第34天_ASP.NET Core MVC前後台搭建_Area使用

圖片
  開發環境使用vs2022  + .net6 新增好一個全新的MVC專案後 針對專案右鍵->加入->新增Scaffold項目->選擇MVC區域 命名為Admin Area部分在每一個 MVC 專案只允許有一層 Areas 目錄不可以有多層 在此做Home控制器及相應view的生成 之後若直接貿然運行就會看到錯誤 An unhandled exception occurred while processing the request. AmbiguousMatchException: The request matched multiple endpoints. Matches: .... 這邊因為同時存在兩個Home控制器導致有模玲兩可狀況 可以避免 Area 中使用相同的 Controller 名稱 或者進行Area的路由設定做區分 因此需要 在 Controller 加入 Area 屬性 ~\Areas\Admin\Controllers\HomeController.cs 1 2 3 4 5 6 7 8 9 10 11 12 13 using Microsoft.AspNetCore.Mvc ; namespace BingoSys.Areas.Admin.Controllers { [Area("Admin")] public class HomeController : Controller { public IActionResult Index () { return View (); } } } 加入 Area 路由設定 開啟 Program.cs 檔案,在既有的 MapControllerRoute 設定多擴充一組 Area 的路由設定 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 var builder = WebApplication.CreateBuilder(args); // Add services t...