Browse Source

1.修正KdbndpParameter无法处理Iterator类型的bug

pull/33/head
tengfei8771 1 year ago
parent
commit
9a0d1ba378
  1. 2
      Src/Asp.NetCore2/SqlSugar/Abstract/AdoProvider/AdoProvider.cs
  2. 8
      Src/Asp.NetCore2/SqlSugar/Utilities/ValidateExtensions.cs

2
Src/Asp.NetCore2/SqlSugar/Abstract/AdoProvider/AdoProvider.cs

@ -1606,7 +1606,7 @@ namespace SqlSugar
if (item.Value != null) if (item.Value != null)
{ {
var type = item.Value.GetType(); var type = item.Value.GetType();
if ((type != UtilConstants.ByteArrayType && type.IsArray&&item.IsArray==false) || type.FullName.IsCollectionsList()) if ((type != UtilConstants.ByteArrayType && type.IsArray&&item.IsArray==false) || type.FullName.IsCollectionsList()||type.IsIterator())
{ {
var newValues = new List<string>(); var newValues = new List<string>();
foreach (var inValute in item.Value as IEnumerable) foreach (var inValute in item.Value as IEnumerable)

8
Src/Asp.NetCore2/SqlSugar/Utilities/ValidateExtensions.cs

@ -153,6 +153,14 @@ namespace SqlSugar
{ {
return (thisValue + "").StartsWith("System.Collections.Generic.List")|| (thisValue + "").StartsWith("System.Collections.Generic.IEnumerable"); return (thisValue + "").StartsWith("System.Collections.Generic.List")|| (thisValue + "").StartsWith("System.Collections.Generic.IEnumerable");
} }
public static bool IsIterator(this Type type)
{
if (type.BaseType.IsGenericType)
{
return type.BaseType.GetGenericTypeDefinition().FullName == "System.Linq.Enumerable+Iterator`1";
}
return false;
}
public static bool IsStringArray(this string thisValue) public static bool IsStringArray(this string thisValue)
{ {
return (thisValue + "").IsMatch(@"System\.[a-z,A-Z,0-9]+?\[\]"); return (thisValue + "").IsMatch(@"System\.[a-z,A-Z,0-9]+?\[\]");

Loading…
Cancel
Save