Commit 5b5dffdb authored by Marc Gravell's avatar Marc Gravell

Merge pull request #337 from tangruixing/master

Update SqlMapper.cs
parents 6fdba5f2 a5f05794
...@@ -378,6 +378,7 @@ void ITypeHandler.SetValue(IDbDataParameter parameter, object value) ...@@ -378,6 +378,7 @@ void ITypeHandler.SetValue(IDbDataParameter parameter, object value)
parameter.Value = SanitizeParameterValue(value); parameter.Value = SanitizeParameterValue(value);
if (parameter is System.Data.SqlClient.SqlParameter) if (parameter is System.Data.SqlClient.SqlParameter)
{ {
((System.Data.SqlClient.SqlParameter)parameter).SqlDbType = SqlDbType.Udt;
((System.Data.SqlClient.SqlParameter)parameter).UdtTypeName = udtTypeName; ((System.Data.SqlClient.SqlParameter)parameter).UdtTypeName = udtTypeName;
} }
} }
...@@ -5445,11 +5446,11 @@ public ConstructorInfo FindConstructor(string[] names, Type[] types) ...@@ -5445,11 +5446,11 @@ public ConstructorInfo FindConstructor(string[] names, Type[] types)
if (types[i] == typeof(byte[]) && ctorParameters[i].ParameterType.FullName == SqlMapper.LinqBinary) if (types[i] == typeof(byte[]) && ctorParameters[i].ParameterType.FullName == SqlMapper.LinqBinary)
continue; continue;
var unboxedType = Nullable.GetUnderlyingType(ctorParameters[i].ParameterType) ?? ctorParameters[i].ParameterType; var unboxedType = Nullable.GetUnderlyingType(ctorParameters[i].ParameterType) ?? ctorParameters[i].ParameterType;
if (unboxedType != types[i] if (unboxedType != types[i]
&& !(unboxedType.IsEnum() && Enum.GetUnderlyingType(unboxedType) == types[i]) && !(unboxedType.IsEnum() && Enum.GetUnderlyingType(unboxedType) == types[i])
&& !(unboxedType == typeof(char) && types[i] == typeof(string)) && !(unboxedType == typeof(char) && types[i] == typeof(string))
&& !(unboxedType.IsEnum() && types[i] == typeof(string))) && !(unboxedType.IsEnum() && types[i] == typeof(string)))
{ {
break; break;
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment