diff --git a/Wpf_AiSportsMicrospace/Common/AppSettings.cs b/Wpf_AiSportsMicrospace/Common/AppSettings.cs index 4b22b76..a24ef05 100644 --- a/Wpf_AiSportsMicrospace/Common/AppSettings.cs +++ b/Wpf_AiSportsMicrospace/Common/AppSettings.cs @@ -5,6 +5,7 @@ using System.IO; using System.Net.Sockets; using System.Text; using System.Text.Json; +using Wpf_AiSportsMicrospace.Common; namespace Common { @@ -18,7 +19,7 @@ namespace Common public static void Init(IConfiguration configuration) { - Code = configuration["Code"] ?? ""; + Code = Utils.GetMacAddress() ?? configuration["SchoolCode"] ?? ""; SchoolCode = configuration["SchoolCode"] ?? ""; BackendUrl = configuration["BackendUrl"] ?? ""; Version = configuration["Version"] ?? ""; diff --git a/Wpf_AiSportsMicrospace/Common/Utils.cs b/Wpf_AiSportsMicrospace/Common/Utils.cs index 80d332a..04d3d14 100644 --- a/Wpf_AiSportsMicrospace/Common/Utils.cs +++ b/Wpf_AiSportsMicrospace/Common/Utils.cs @@ -7,6 +7,7 @@ using SixLabors.ImageSharp.Processing; using System.Diagnostics; using System.IO; using System.Linq; +using System.Net.NetworkInformation; using System.Text; using System.Text.Json; using System.Threading.Tasks; @@ -321,5 +322,31 @@ namespace Wpf_AiSportsMicrospace.Common return null; } } + + /// + /// 获取本机Mac地址 + /// + /// + public static string GetMacAddress() + { + // 获取所有网络接口 + var nics = NetworkInterface.GetAllNetworkInterfaces(); + + // 过滤掉不活动的和虚拟网卡 + var activeNics = nics + .Where(n => n.OperationalStatus == OperationalStatus.Up && + n.NetworkInterfaceType != NetworkInterfaceType.Loopback && + n.NetworkInterfaceType != NetworkInterfaceType.Tunnel) + .ToList(); + + if (activeNics.Count == 0) + return string.Empty; + + // 获取第一个活跃网卡的 MAC 地址 + var macBytes = activeNics[0].GetPhysicalAddress().GetAddressBytes(); + + // 转成常用的 XX-XX-XX-XX-XX-XX 格式 + return string.Join("-", macBytes.Select(b => b.ToString("X2"))); + } } } diff --git a/Wpf_AiSportsMicrospace/appsettings.json b/Wpf_AiSportsMicrospace/appsettings.json index 83b7985..400cf88 100644 --- a/Wpf_AiSportsMicrospace/appsettings.json +++ b/Wpf_AiSportsMicrospace/appsettings.json @@ -2,7 +2,7 @@ "ConnectionStrings": { "DefaultConnection": "Data Source=rm-uf64b8oxdt19pfyxfao.sqlserver.rds.aliyuncs.com;Database=AiSportsMicrospaceDB_QA;User ID=qa;Password=Admin@123;Connect Timeout=500;TrustServerCertificate=True;" }, - "Code": "04-68-74-3F-87-72", + "Code": "C0-E3-50-3E-45-68", "SchoolCode": "202501060001", "Version": "1.0.0", "BackendUrl": "http://localhost:9991/api/StudentFace"