mirror of
https://github.com/nsnail/ns-ext.git
synced 2025-06-20 01:28:15 +08:00
Compare commits
3 Commits
Author | SHA1 | Date | |
---|---|---|---|
05ca80acda | |||
cc761e4939 | |||
d23092e8fc |
@ -1,25 +0,0 @@
|
|||||||
Param(
|
|
||||||
# Nuget APIKey
|
|
||||||
[string] $apikey
|
|
||||||
)
|
|
||||||
|
|
||||||
if ($apikey -eq $null -or $apikey -eq "")
|
|
||||||
{
|
|
||||||
Write-Error "require apiKey";
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
rm -r ./build/nupkgs
|
|
||||||
dotnet build -c Release
|
|
||||||
$files = Get-ChildItem -Path ./build/nupkgs/ -Filter *.nupkg
|
|
||||||
foreach ($file in $files)
|
|
||||||
{
|
|
||||||
dotnet nuget push $file.fullName --skip-duplicate --api-key $apikey --source https://api.nuget.org/v3/index.json
|
|
||||||
nuget add $file.fullName -source d:\nuget-pkg
|
|
||||||
}
|
|
||||||
$files = Get-ChildItem -Path ./build/nupkgs/ -Filter *.snupkg
|
|
||||||
foreach ($file in $files)
|
|
||||||
{
|
|
||||||
dotnet nuget push $file.fullName --skip-duplicate --api-key $apikey --source https://api.nuget.org/v3/index.json
|
|
||||||
nuget add $file.fullName -source d:\nuget-pkg
|
|
||||||
}
|
|
@ -17,13 +17,13 @@ public static class EnumExtensions
|
|||||||
{
|
{
|
||||||
var t = e.GetType();
|
var t = e.GetType();
|
||||||
var fi = t.GetField(Enum.GetName(t, e)!);
|
var fi = t.GetField(Enum.GetName(t, e)!);
|
||||||
var descAttr = fi!.GetCustomAttribute<DescriptionAttribute>(false);
|
var descAttr = fi!.GetCustomAttribute<DescriptionAttribute>(true);
|
||||||
if (descAttr is null) {
|
if (descAttr is null) {
|
||||||
return Enum.GetName(t, e);
|
return Enum.GetName(t, e);
|
||||||
}
|
}
|
||||||
|
|
||||||
var str = descAttr.Description;
|
var str = descAttr.Description;
|
||||||
var locAttr = fi!.GetCustomAttribute<LocalizationAttribute>(false);
|
var locAttr = fi!.GetCustomAttribute<LocalizationAttribute>(true);
|
||||||
return locAttr is null ? str : locAttr.ResourceClass.GetProperty(str)?.GetValue(default) as string ?? str;
|
return locAttr is null ? str : locAttr.ResourceClass.GetProperty(str)?.GetValue(default) as string ?? str;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -15,7 +15,19 @@ public static class ObjectExtensions
|
|||||||
/// <returns>json文本</returns>
|
/// <returns>json文本</returns>
|
||||||
public static string Json(this object me, bool format = false)
|
public static string Json(this object me, bool format = false)
|
||||||
{
|
{
|
||||||
return JsonSerializer.Serialize(
|
var defaultOptions = default(JsonSerializerOptions).NewJsonSerializerOptions();
|
||||||
me, new JsonSerializerOptions { WriteIndented = format, PropertyNamingPolicy = JsonNamingPolicy.CamelCase });
|
defaultOptions.WriteIndented = format;
|
||||||
|
return Json(me, defaultOptions);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 将一个对象序列化成json文本
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="me">指定对象</param>
|
||||||
|
/// <param name="options">序列化选项</param>
|
||||||
|
/// <returns>json文本</returns>
|
||||||
|
public static string Json(this object me, JsonSerializerOptions options)
|
||||||
|
{
|
||||||
|
return JsonSerializer.Serialize(me, options);
|
||||||
}
|
}
|
||||||
}
|
}
|
Reference in New Issue
Block a user