- 修复 参数化 Column DbType 设置特殊值时的类型判断;

This commit is contained in:
28810
2020-08-24 13:35:48 +08:00
parent d951b475d9
commit 824d60cbb2
5 changed files with 139 additions and 4 deletions

View File

@ -11,6 +11,51 @@ namespace FreeSql.Tests.MySqlConnector
{
public class MySqlCodeFirstTest
{
[Fact]
public void DateTime_1()
{
var item1 = new TS_DATETIME01 { CreateTime = DateTime.Now };
Assert.Equal(1, g.mysql.Insert(item1).ExecuteAffrows());
var item2 = g.mysql.Select<TS_DATETIME01>().Where(a => a.Id == item1.Id).First();
Assert.NotNull(item2.CreateTime);
Assert.True(1 > Math.Abs(item2.CreateTime.Value.Subtract(item1.CreateTime.Value).TotalSeconds));
item1.CreateTime = DateTime.Now;
Assert.Equal(1, g.mysql.Update<TS_DATETIME01>().SetSource(item1).ExecuteAffrows());
item2 = g.mysql.Select<TS_DATETIME01>().Where(a => a.Id == item1.Id).First();
Assert.NotNull(item2.CreateTime);
Assert.True(1 > Math.Abs(item2.CreateTime.Value.Subtract(item1.CreateTime.Value).TotalSeconds));
}
class TS_DATETIME01
{
public Guid Id { get; set; }
[Column(DbType = "datetime NULL")]
public DateTime? CreateTime { get; set; }
}
[Fact]
public void DateTime_2()
{
var item1 = new TS_DATETIME02 { CreateTime = DateTime.Now };
Assert.Equal(1, g.mysql.Insert(item1).ExecuteAffrows());
var item2 = g.mysql.Select<TS_DATETIME02>().Where(a => a.Id == item1.Id).First();
Assert.NotNull(item2.CreateTime);
Assert.True(1 > Math.Abs(item2.CreateTime.Value.Subtract(item1.CreateTime.Value).TotalSeconds));
item1.CreateTime = DateTime.Now;
Assert.Equal(1, g.mysql.Update<TS_DATETIME02>().SetSource(item1).ExecuteAffrows());
item2 = g.mysql.Select<TS_DATETIME02>().Where(a => a.Id == item1.Id).First();
Assert.NotNull(item2.CreateTime);
Assert.True(1 > Math.Abs(item2.CreateTime.Value.Subtract(item1.CreateTime.Value).TotalSeconds));
}
class TS_DATETIME02
{
public Guid Id { get; set; }
[Column(DbType = "datetime NOT NULL")]
public DateTime? CreateTime { get; set; }
}
[Fact]
public void Text_StringLength_1()
{