diff --git a/Extensions/FreeSql.Generator/RazorModel.cs b/Extensions/FreeSql.Generator/RazorModel.cs index 85296c72..8e1d8ca9 100644 --- a/Extensions/FreeSql.Generator/RazorModel.cs +++ b/Extensions/FreeSql.Generator/RazorModel.cs @@ -2,6 +2,7 @@ using FreeSql.DataAnnotations; using FreeSql.DatabaseModel; using FreeSql.Internal.CommonProvider; +using MySqlConnector; using System; using System.Collections.Generic; using System.Linq; @@ -47,7 +48,7 @@ public class RazorModel { public string GetCsType(DbColumnInfo col) { if (fsql.Ado.DataType == FreeSql.DataType.MySql) - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Enum || col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) + if (col.DbType == (int)MySqlDbType.Enum || col.DbType == (int)MySqlDbType.Set) return $"{this.GetCsName(this.FullTableName)}{this.GetCsName(col.Name).ToUpper()}{(col.IsNullable ? "?" : "")}"; return fsql.DbFirst.GetCsType(col); } @@ -243,7 +244,7 @@ public class RazorModel { if (cstype == typeof(string)) return isInsertValueSql ? (fsql.Select() as Select0Provider)._commonUtils.FormatSql("{0}", defval) : $"\"{defval.Replace("\r\n", "\\r\\n").Replace("\"", "\\\"")}\""; if (cstype == typeof(bool)) return isInsertValueSql ? defval : (defval == "1" || defval == "t" ? "true" : "false"); if (fsql.Ado.DataType == DataType.MySql || fsql.Ado.DataType == DataType.OdbcMySql) - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Enum || col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) + if (col.DbType == (int)MySqlDbType.Enum || col.DbType == (int)MySqlDbType.Set) if (isInsertValueSql) return (fsql.Select() as Select0Provider)._commonUtils.FormatSql("{0}", defval); return isInsertValueSql ? defval : null; //sql function or exp } @@ -255,10 +256,10 @@ public class RazorModel { if (fsql.Ado.DataType != FreeSql.DataType.MySql && fsql.Ado.DataType != FreeSql.DataType.OdbcMySql) return null; var sb = new StringBuilder(); foreach (var col in table.Columns) { - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Enum || col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) { - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) sb.Append("\r\n\t[Flags]"); + if (col.DbType == (int)MySqlDbType.Enum || col.DbType == (int)MySqlDbType.Set) { + if (col.DbType == (int)MySqlDbType.Set) sb.Append("\r\n\t[Flags]"); sb.Append($"\r\n\tpublic enum {this.GetCsName(this.FullTableName)}{this.GetCsName(col.Name).ToUpper()}"); - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) sb.Append(" : long"); + if (col.DbType == (int)MySqlDbType.Set) sb.Append(" : long"); sb.Append(" {\r\n\t\t"); string slkdgjlksdjg = ""; @@ -289,9 +290,9 @@ public class RazorModel { /// [Description(""{0}"")] Unknow{1}", str2.Replace("\"", "\\\""), ++unknow_idx); - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Set) + if (col.DbType == (int)MySqlDbType.Set) slkdgjlksdjg += " = " + Math.Pow(2, field_idx++); - if (col.DbType == (int)MySql.Data.MySqlClient.MySqlDbType.Enum && field_idx++ == 0) + if (col.DbType == (int)MySqlDbType.Enum && field_idx++ == 0) slkdgjlksdjg += " = 1"; break; } diff --git a/FreeSql.Tests/FreeSql.Tests.Provider.MySqlConnector/MySqlConnector/MySqlConnectorExpression/OtherTest.cs b/FreeSql.Tests/FreeSql.Tests.Provider.MySqlConnector/MySqlConnector/MySqlConnectorExpression/OtherTest.cs index cc32f9b0..ce521316 100644 --- a/FreeSql.Tests/FreeSql.Tests.Provider.MySqlConnector/MySqlConnector/MySqlConnectorExpression/OtherTest.cs +++ b/FreeSql.Tests/FreeSql.Tests.Provider.MySqlConnector/MySqlConnector/MySqlConnectorExpression/OtherTest.cs @@ -1,5 +1,5 @@ using FreeSql.DataAnnotations; -using MySql.Data.MySqlClient; +using MySqlConnector; using System; using System.Collections.Generic; using System.Linq; diff --git a/FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Dameng/Curd/DamengInsertOrUpdateTest.cs b/FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Dameng/Curd/DamengInsertOrUpdateTest.cs index 5143f004..dfbaeb07 100644 --- a/FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Dameng/Curd/DamengInsertOrUpdateTest.cs +++ b/FreeSql.Tests/FreeSql.Tests.Provider.Odbc/Dameng/Curd/DamengInsertOrUpdateTest.cs @@ -154,6 +154,7 @@ WHEN NOT MATCHED THEN public int id { get; set; } public string name { get; set; } } + [Fact] public void InsertOrUpdate_OnePrimaryAndIdentity() { fsql.Delete().Where("1=1").ExecuteAffrows(); diff --git a/FreeSql.Tests/FreeSql.Tests/ShenTong/ShenTongExpression/OtherTest.cs b/FreeSql.Tests/FreeSql.Tests/ShenTong/ShenTongExpression/OtherTest.cs index 573d250f..75c634bb 100644 --- a/FreeSql.Tests/FreeSql.Tests/ShenTong/ShenTongExpression/OtherTest.cs +++ b/FreeSql.Tests/FreeSql.Tests/ShenTong/ShenTongExpression/OtherTest.cs @@ -174,7 +174,7 @@ namespace FreeSql.Tests.ShenTongExpression public TableAllTypeEnumType2 testFieldEnum2 { get; set; } public TableAllTypeEnumType2? testFieldEnum2Nullable { get; set; } - ///* array */ + //* array */ //public bool[] testFieldBoolArray { get; set; } //public sbyte[] testFieldSByteArray { get; set; } //public short[] testFieldShortArray { get; set; }