diff --git a/Src/Asp.Net/SqlServerTest/UnitTest/UQueryable.cs b/Src/Asp.Net/SqlServerTest/UnitTest/UQueryable.cs index 2027a455a..cfc75830a 100644 --- a/Src/Asp.Net/SqlServerTest/UnitTest/UQueryable.cs +++ b/Src/Asp.Net/SqlServerTest/UnitTest/UQueryable.cs @@ -137,6 +137,24 @@ namespace OrmTest }); int i = 0; var salist= sa.ToPageList(1,2,ref i); + + db.CodeFirst.InitTables(); + db.Insertable(new UnitBytes11() { bytes = null, name = "a" }).ExecuteCommand(); + db.Insertable(new UnitBytes11() { bytes=new byte[] { 1,2} , name="a"}).ExecuteCommand(); + var bytes = db.Queryable().Select(it => new + { + b = it.bytes, + name="a" + }).ToList(); + } + + + + public class UnitBytes11 + { + [SugarColumn(Length =200,IsNullable =true)] + public byte[] bytes { get; set; } + public string name{ get; set; } } /// diff --git a/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs b/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs index 14e3217ab..1b1de151f 100644 --- a/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs +++ b/Src/Asp.Net/SqlSugar/Infrastructure/ContextMethods.cs @@ -286,6 +286,10 @@ namespace SqlSugar { result.Add(name, DeserializeObject>>(readerValues[item.Name.ToLower()].ToString())); } + else if (IsBytes(readerValues, item)) + { + result.Add(name,(byte[])readerValues[item.Name.ToLower()]); + } else { result.Add(name, DataReaderToDynamicList_Part(readerValues, item, reval)); @@ -335,6 +339,14 @@ namespace SqlSugar return result; } + private static bool IsBytes(Dictionary readerValues, PropertyInfo item) + { + return item.PropertyType == UtilConstants.ByteArrayType && + readerValues.ContainsKey(item.Name.ToLower())&& + (readerValues[item.Name.ToLower()]==null|| + readerValues[item.Name.ToLower()].GetType()==UtilConstants.ByteArrayType); + } + private static bool IsJsonItem(Dictionary readerValues, string name) { return readerValues != null &&