ManagementClass mc_mac = new ManagementClass("Win32_NetworkAdapterConfiguration");
ManagementObjectCollection moc_mac = mc_mac.GetInstances();
foreach (ManagementObject mo in moc_mac)
{
if ((bool)mo["IPEnabled"] == true)
{
mac += mo["MacAddress"].ToString();
}
}
在网上找到以前获取MAC地址是这样获取的,
但是在Core1里面不能添加using System.Management; 这个引用。
有什么其他办法吗? 在线等!
哦,你这段代码在不是CORE的版本上试过可以正确获得客户端的MAC地址吗?
可以报告一下微软,你发现新大陆了。
那段代码在不是CORE的版本上是可以获取到的。
using System.Management; 这个引用不支持这个版本的 EntityFramework?
我现在是想去获取客户端MAC地址作为唯一标识。
或许大叔有更好的办法来做这个唯一标识?(在CORE版本证实可以用的办法)
@多小孩: 你是学生吧,我既然问你这个问题,当然是有含义的了。
你确定你可以用那段代码拿到客户端的MAC地址?这事情真的可以惊动比尔盖茨的,不瞎说。
@爱编程的大叔: 可以!
@爱编程的大叔:
@多小孩: 你还是好好想想我问你的话吧,不要回答得这么快。
要不然我也不会这么问你了。
@爱编程的大叔: 我想我是错了,不是客户端的MAC地址。
应该是本地的MAC地址。
var networks = NetworkInterface.GetAllNetworkInterfaces(); foreach (var network in networks) { if (network.NetworkInterfaceType == NetworkInterfaceType.Ethernet) { var physicalAddress = network.GetPhysicalAddress(); string macAddressStr = string.Join(":", physicalAddress.GetAddressBytes().Select(b => b.ToString("X2"))); } }
nuget安装System.Net.NetworkInformation
这是可以拿到MAC地址但是不是客户端的而是服务器的...
唉。这种问题怎么又有人来问。。。。。请问,一个http请求,会把客户端的mac地址放在哪里?
请问,浏览器,允许js去访问物理信息吗?要是这样子的话,随便谁写一个js代码,你一访问,不就知道对方的mac地址了?
总有奇葩用户想逆天
在NutGet里面下载 System.Management
– 翱翔天际_飞 5年前