using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace SqlSugar.OceanBaseForOracle { /// ///Common Extensions for external users /// public static class UtilExtensions { public static bool EqualCase(this string thisValue, string equalValue) { if (thisValue != null && equalValue != null) { return thisValue.ToLower() == equalValue.ToLower(); } else { return thisValue == equalValue; } } public static string ToLower(this string value, bool isLower) { if (isLower) { return value.ObjToString().ToLower(); } return value.ObjToString(); } public static int ObjToInt(this object thisValue) { int reval = 0; if (thisValue == null) return 0; if (thisValue is Enum) { return (int)thisValue; } if (thisValue != null && thisValue != DBNull.Value && int.TryParse(thisValue.ToString(), out reval)) { return reval; } return reval; } public static int ObjToInt(this object thisValue, int errorValue) { int reval = 0; if (thisValue is Enum) { return (int)thisValue; } if (thisValue != null && thisValue != DBNull.Value && int.TryParse(thisValue.ToString(), out reval)) { return reval; } return errorValue; } public static double ObjToMoney(this object thisValue) { double reval = 0; if (thisValue != null && thisValue != DBNull.Value && double.TryParse(thisValue.ToString(), out reval)) { return reval; } return 0; } public static double ObjToMoney(this object thisValue, double errorValue) { double reval = 0; if (thisValue != null && thisValue != DBNull.Value && double.TryParse(thisValue.ToString(), out reval)) { return reval; } return errorValue; } public static string ObjToString(this object thisValue) { if (thisValue != null) return thisValue.ToString().Trim(); return ""; } public static string ObjToString(this object thisValue, string errorValue) { if (thisValue != null) return thisValue.ToString().Trim(); return errorValue; } public static Decimal ObjToDecimal(this object thisValue) { Decimal reval = 0; if (thisValue != null && thisValue != DBNull.Value && decimal.TryParse(thisValue.ToString(), out reval)) { return reval; } return 0; } public static Decimal ObjToDecimal(this object thisValue, decimal errorValue) { Decimal reval = 0; if (thisValue != null && thisValue != DBNull.Value && decimal.TryParse(thisValue.ToString(), out reval)) { return reval; } return errorValue; } public static DateTime ObjToDate(this object thisValue) { DateTime reval = DateTime.MinValue; if (thisValue != null && thisValue != DBNull.Value && DateTime.TryParse(thisValue.ToString(), out reval)) { reval = Convert.ToDateTime(thisValue); } return reval; } public static DateTime ObjToDate(this object thisValue, DateTime errorValue) { DateTime reval = DateTime.MinValue; if (thisValue != null && thisValue != DBNull.Value && DateTime.TryParse(thisValue.ToString(), out reval)) { return reval; } return errorValue; } public static bool ObjToBool(this object thisValue) { bool reval = false; if (thisValue != null && thisValue != DBNull.Value && bool.TryParse(thisValue.ToString(), out reval)) { return reval; } return reval; } public static string ToUpper(this string value, bool isAutoToUpper) { if (value == null) return null; if (isAutoToUpper == false) return value; return value.ToUpper(); } public static string GetN(this SqlSugarProvider Context) { var N = "N"; if (Context.CurrentConnectionConfig.MoreSettings != null && Context.CurrentConnectionConfig.MoreSettings.DisableNvarchar) { N = ""; } return N; } } }