using Microsoft.AspNetCore.Http;
namespace Bunny.Common.Utils.Net;
public static partial class NetUtil
{
///
/// 仿写java对象拷贝
///
///
///
///
///
public static void CopyProperties(T1 source, T2 target)
{
var sourceProperties = source!.GetType().GetProperties();
var targetProperties = target!.GetType().GetProperties();
foreach (var sourceProperty in sourceProperties)
{
var targetProperty = targetProperties.FirstOrDefault(x =>
x.Name == sourceProperty.Name && x.PropertyType == sourceProperty.PropertyType);
if (targetProperty == null || !targetProperty.CanWrite) continue;
var value = sourceProperty.GetValue(source);
targetProperty.SetValue(target, value);
}
}
///
/// 获取token
///
/// 请求
/// token值
public static string? GetToken(HttpRequest request)
{
return request.Headers["token"];
}
///
/// 获取请求路径
///
/// 请求
public static string? GetRequestPath(HttpRequest request)
{
return request.Path.Value;
}
}