From 2e190eb30513c81234bc42ec4f7eaf292ca8e562 Mon Sep 17 00:00:00 2001 From: Elivo Date: Sun, 30 Mar 2025 21:14:36 +0800 Subject: [PATCH] =?UTF-8?q?Class=20=E6=9A=82=E6=97=B6=E5=8E=BB=E9=99=A4?= =?UTF-8?q?=E9=9A=90=E5=BC=8F=E8=BD=AC=E6=8D=A2=EF=BC=8C=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=89=A9=E5=B1=95=E6=96=B9=E6=B3=95=20object.Class()=20?= =?UTF-8?q?=E7=94=A8=E4=BA=8E=E5=B0=86=20Value=20=E8=BD=AC=E6=8D=A2?= =?UTF-8?q?=E4=B8=BA=20Class=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Apewer/Class.cs | 29 ++++++++++++++--------------- Apewer/ClockUtility.cs | 2 +- Apewer/_Extensions.cs | 7 +++++++ 3 files changed, 22 insertions(+), 16 deletions(-) diff --git a/Apewer/Class.cs b/Apewer/Class.cs index 7e29505..a5fe390 100644 --- a/Apewer/Class.cs +++ b/Apewer/Class.cs @@ -123,26 +123,25 @@ namespace Apewer { if (instance == null) return false; - var boolean = instance as Class; - if (boolean != null) return boolean.Value; + // var boolean = instance as Class; + // if (boolean != null) return boolean.Value; - var text = instance as Class; - if (text != null) return !string.IsNullOrEmpty(text.Value); + // var text = instance as Class; + // if (text != null) return !string.IsNullOrEmpty(text.Value); - return instance != null; + return true; } - /// 到 T 的隐式转换。 - public static implicit operator T(Class instance) - { - if (instance == null) return default(T); - - if (typeof(T).Equals(typeof(bool))) return instance.Value; - return instance.Value; - } + // /// 到 T 的隐式转换。 + // public static implicit operator T(Class instance) + // { + // if (instance == null) return default(T); + // if (typeof(T).Equals(typeof(bool))) return instance.Value; + // return instance.Value; + // } - /// 从 T 到 的隐式转换。 - public static implicit operator Class(T value) => new Class(value); + // /// 从 T 到 的隐式转换。 + // public static implicit operator Class(T value) => new Class(value); #endregion diff --git a/Apewer/ClockUtility.cs b/Apewer/ClockUtility.cs index a3b4a4a..9dcde54 100644 --- a/Apewer/ClockUtility.cs +++ b/Apewer/ClockUtility.cs @@ -16,7 +16,7 @@ namespace Apewer /// 尝试转换内容为 DateTime 实例。 public static Class DateTime(object value) { - if (value is DateTime dt) return dt; + if (value is DateTime dt) return new Class(dt); if (value.IsNull()) return null; try diff --git a/Apewer/_Extensions.cs b/Apewer/_Extensions.cs index b061e20..2fb8ae7 100644 --- a/Apewer/_Extensions.cs +++ b/Apewer/_Extensions.cs @@ -29,6 +29,13 @@ public static class Extensions /// 是默认值。 public static bool IsDefault(this object @this) => RuntimeUtility.IsDefault(@this); + #region Class + + /// 装箱。 + public static Class Class(this T value) => new Class(value); + + #endregion + #region Class Utility /// 调用 Get 方法。