Browse Source

Code First uint usort ulong bug

pull/2/head
skx 4 years ago
parent
commit
cf81fb443f
  1. 16
      Src/Asp.Net/MySqlTest/UnitTest/UCodeFirst.cs
  2. 16
      Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs

16
Src/Asp.Net/MySqlTest/UnitTest/UCodeFirst.cs

@ -13,6 +13,15 @@ namespace OrmTest
if (Db.DbMaintenance.IsAnyTable("UnitCodeTest1", false))
Db.DbMaintenance.DropTable("UnitCodeTest1");
Db.CodeFirst.InitTables<UnitCodeTest1>();
Db.CodeFirst.InitTables<UnitCodeTest2222>();
Db.Insertable(new UnitCodeTest2222()
{
Id = 1,
Id2 = 2,
Id3 = 3,
Id4=4
}).ExecuteCommand();
var list = Db.Queryable<UnitCodeTest2222>().ToList();
}
public class UnitCodeTest1
{
@ -21,5 +30,12 @@ namespace OrmTest
[SqlSugar.SugarColumn(DefaultValue="now()", IndexGroupNameList =new string[] {"group1" } )]
public DateTime? CreateDate { get; set; }
}
public class UnitCodeTest2222
{
public uint Id { get; set; }
public ulong Id2 { get; set; }
public ushort Id3 { get; set; }
public uint? Id4 { get; set; }
}
}
}

16
Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs

@ -304,7 +304,8 @@ namespace SqlSugar
}
else
{
result.DataType = this.Context.Ado.DbBind.GetDbTypeName(propertyType.Name);
var name = GetType(propertyType.Name);
result.DataType = this.Context.Ado.DbBind.GetDbTypeName(name);
}
}
@ -322,7 +323,8 @@ namespace SqlSugar
}
else
{
properyTypeName = this.Context.Ado.DbBind.GetDbTypeName(propertyType.Name);
var name = GetType(propertyType.Name);
properyTypeName = this.Context.Ado.DbBind.GetDbTypeName(name);
}
var dataType = dc.DataType;
if (properyTypeName == "boolean" && dataType == "bool")
@ -331,6 +333,16 @@ namespace SqlSugar
}
return properyTypeName != dataType;
}
private static string GetType(string name)
{
if (name.IsContainsIn("UInt32", "UInt16", "UInt64"))
{
name = name.TrimStart('U');
}
return name;
}
#endregion
}
}

Loading…
Cancel
Save