mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-18 20:08:15 +08:00
- 增加 StringLength/MaxLength 对 byte[] 的支持;
This commit is contained in:
@ -2,6 +2,7 @@ using FreeSql.DataAnnotations;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using Xunit;
|
||||
@ -98,6 +99,38 @@ namespace FreeSql.Tests.MySqlConnector
|
||||
public string Data { get; set; }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Blob()
|
||||
{
|
||||
var str1 = string.Join(",", Enumerable.Range(0, 10000).Select(a => "<22><><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>"));
|
||||
var data1 = Encoding.UTF8.GetBytes(str1);
|
||||
|
||||
var item1 = new TS_BLB01 { Data = data1 };
|
||||
Assert.Equal(1, g.mysql.Insert(item1).ExecuteAffrows());
|
||||
|
||||
var item2 = g.mysql.Select<TS_BLB01>().Where(a => a.Id == item1.Id).First();
|
||||
Assert.Equal(item1.Data.Length, item2.Data.Length);
|
||||
|
||||
var str2 = Encoding.UTF8.GetString(item2.Data);
|
||||
Assert.Equal(str1, str2);
|
||||
|
||||
//NoneParameter
|
||||
item1 = new TS_BLB01 { Data = data1 };
|
||||
Assert.Equal(1, g.mysql.Insert<TS_BLB01>().NoneParameter().AppendData(item1).ExecuteAffrows());
|
||||
|
||||
item2 = g.mysql.Select<TS_BLB01>().Where(a => a.Id == item1.Id).First();
|
||||
Assert.Equal(item1.Data.Length, item2.Data.Length);
|
||||
|
||||
str2 = Encoding.UTF8.GetString(item2.Data);
|
||||
Assert.Equal(str1, str2);
|
||||
}
|
||||
class TS_BLB01
|
||||
{
|
||||
public Guid Id { get; set; }
|
||||
[MaxLength(-2)]
|
||||
public byte[] Data { get; set; }
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void StringLength()
|
||||
{
|
||||
|
Reference in New Issue
Block a user