diff --git a/scripts/rename.csx b/scripts/rename.csx
index d0b2029f..422bd424 100644
--- a/scripts/rename.csx
+++ b/scripts/rename.csx
@@ -1,4 +1,4 @@
-#r "nuget: NSExt, 2.2.0"
+#r "nuget: NSExt, 2.3.2"
using NSExt.Extensions;
Console.WriteLine("请输入原始名称(NetAdmin):");
diff --git a/src/backend/NetAdmin/NetAdmin.Infrastructure/Extensions/StringExtensions.cs b/src/backend/NetAdmin/NetAdmin.Infrastructure/Extensions/StringExtensions.cs
index df9cd3da..3d11f41a 100644
--- a/src/backend/NetAdmin/NetAdmin.Infrastructure/Extensions/StringExtensions.cs
+++ b/src/backend/NetAdmin/NetAdmin.Infrastructure/Extensions/StringExtensions.cs
@@ -1,7 +1,3 @@
-using System.Numerics;
-using Microsoft.CodeAnalysis.CSharp.Scripting;
-using Microsoft.CodeAnalysis.Scripting;
-
namespace NetAdmin.Infrastructure.Extensions;
///
@@ -9,105 +5,6 @@ namespace NetAdmin.Infrastructure.Extensions;
///
public static class StringExtensions
{
- private const string _CHARACTERS = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
- private static readonly Regex _regexIpV4 = new(Chars.RGXL_IP_V4);
-
- ///
- /// 将指定的输入字符串进行Base62解码
- ///
- /// ArgumentException
- public static string Base62Decode(this string me)
- {
- BigInteger result = 0;
-
- foreach (var index in me.Select(c => _CHARACTERS.IndexOf(c))) {
- if (index < 0) {
- throw new ArgumentException("Invalid character in Base62 string.");
- }
-
- #pragma warning disable IDE0048, RCS1123, SA1407
- result = result * 62 + index;
- #pragma warning restore SA1407, RCS1123, IDE0048
- }
-
- // Convert BigInteger back to byte array and then to string
- var bytes = result.ToByteArray();
-
- // Handle the sign bit
- if (bytes[^1] == 0) {
- Array.Resize(ref bytes, bytes.Length - 1);
- }
-
- return Encoding.UTF8.GetString(bytes);
- }
-
- ///
- /// 将指定的输入字符串进行Base62编码
- ///
- public static string Base62Encode(this string me)
- {
- // Convert string to byte array
- var bytes = Encoding.UTF8.GetBytes(me);
-
- // Convert byte array to BigInteger for easier processing
- var bigInteger = new BigInteger(bytes);
-
- if (bigInteger == 0) {
- return _CHARACTERS[0].ToString();
- }
-
- var result = new StringBuilder();
-
- while (bigInteger > 0) {
- var remainder = (int)(bigInteger % 62);
- bigInteger /= 62;
- _ = result.Insert(0, _CHARACTERS[remainder]);
- }
-
- return result.ToString();
- }
-
- ///
- /// 解码避免转义的Base64
- ///
- public static string Base64InUrlDecode(this string me)
- {
- return me.Replace("-", "+").Replace("_", "/");
- }
-
- ///
- /// 编码避免转义的Base64
- ///
- public static string Base64InUrlEncode(this string me)
- {
- return me.Replace("+", "-").Replace("/", "_");
- }
-
- ///
- /// 计算Crc32
- ///
- public static int Crc32(this string me)
- {
- return BitConverter.ToInt32(System.IO.Hashing.Crc32.Hash(Encoding.UTF8.GetBytes(me)));
- }
-
- ///
- /// 执行C#代码
- ///
- public static Task ExecuteCSharpCodeAsync(this string me, Assembly[] assemblies, params string[] importNamespaces)
- {
- // 使用 Roslyn 编译并执行代码
- return CSharpScript.EvaluateAsync(me, ScriptOptions.Default.WithReferences(assemblies).WithImports(importNamespaces));
- }
-
- ///
- /// 是否IPV4地址
- ///
- public static bool IsIpV4(this string me)
- {
- return _regexIpV4.IsMatch(me);
- }
-
///
/// object -> json
///
@@ -124,22 +21,6 @@ public static class StringExtensions
return me.Object(toType, GlobalStatic.JsonSerializerOptions);
}
- ///
- /// 去掉前部字符串
- ///
- public static string TrimPrefix(this string me, string clearStr)
- {
- return Regex.Replace(me, $"^{clearStr}", string.Empty);
- }
-
- ///
- /// 去掉尾部字符串
- ///
- public static string TrimSuffix(this string me, string clearStr)
- {
- return Regex.Replace(me, $"{clearStr}$", string.Empty);
- }
-
///
/// 去掉尾部字符串“Async”
///
@@ -147,7 +28,7 @@ public static class StringExtensions
public static string TrimSuffixAsync(this string me)
#pragma warning restore VSTHRD200, ASA002, RCS1047
{
- return TrimSuffix(me, "Async");
+ return me.TrimSuffix("Async");
}
///
@@ -155,6 +36,6 @@ public static class StringExtensions
///
public static string TrimSuffixOptions(this string me)
{
- return TrimSuffix(me, "Options");
+ return me.TrimSuffix("Options");
}
}
\ No newline at end of file
diff --git a/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj b/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj
index 4fd609a1..1a459774 100644
--- a/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj
+++ b/src/backend/NetAdmin/NetAdmin.Infrastructure/NetAdmin.Infrastructure.csproj
@@ -6,10 +6,9 @@
-
-
+