Commit da7f0dd3 authored by Marc Gravell's avatar Marc Gravell

Merge branch 'kppullin-defaultStringType'

parents 1e27c363 9c3c52f1
...@@ -5258,6 +5258,11 @@ internal static void Set(IDbDataParameter parameter, DataTable table, string typ ...@@ -5258,6 +5258,11 @@ internal static void Set(IDbDataParameter parameter, DataTable table, string typ
/// </summary> /// </summary>
sealed partial class DbString : Dapper.SqlMapper.ICustomQueryParameter sealed partial class DbString : Dapper.SqlMapper.ICustomQueryParameter
{ {
/// <summary>
/// Default value for IsAnsi.
/// </summary>
public static bool IsAnsiDefault { get; set; }
/// <summary> /// <summary>
/// A value to set the default value of strings /// A value to set the default value of strings
/// going through Dapper. Default is 4000, any value larger than this /// going through Dapper. Default is 4000, any value larger than this
...@@ -5268,7 +5273,10 @@ sealed partial class DbString : Dapper.SqlMapper.ICustomQueryParameter ...@@ -5268,7 +5273,10 @@ sealed partial class DbString : Dapper.SqlMapper.ICustomQueryParameter
/// <summary> /// <summary>
/// Create a new DbString /// Create a new DbString
/// </summary> /// </summary>
public DbString() { Length = -1; } public DbString() {
Length = -1;
IsAnsi = IsAnsiDefault;
}
/// <summary> /// <summary>
/// Ansi vs Unicode /// Ansi vs Unicode
/// </summary> /// </summary>
......
...@@ -1541,6 +1541,23 @@ public void TestDbString() ...@@ -1541,6 +1541,23 @@ public void TestDbString()
((int)obj.f).IsEqualTo(10); ((int)obj.f).IsEqualTo(10);
} }
public void TestDefaultDbStringDbType()
{
var origDefaultStringDbType = DbString.IsAnsiDefault;
try
{
DbString.IsAnsiDefault = true;
var a = new DbString { Value = "abcde" };
var b = new DbString { Value = "abcde", IsAnsi = false };
a.IsAnsi.IsTrue();
b.IsAnsi.IsFalse();
}
finally
{
DbString.IsAnsiDefault = origDefaultStringDbType;
}
}
class Person class Person
{ {
public int PersonId { get; set; } public int PersonId { get; set; }
...@@ -3289,7 +3306,7 @@ SELECT @a ...@@ -3289,7 +3306,7 @@ SELECT @a
connection.Query<TimeSpan>("#TestProcWithTimeParameter", p, commandType: CommandType.StoredProcedure).First().IsEqualTo(new TimeSpan(10, 0, 0)); connection.Query<TimeSpan>("#TestProcWithTimeParameter", p, commandType: CommandType.StoredProcedure).First().IsEqualTo(new TimeSpan(10, 0, 0));
} }
public void DbString() public void DbStringAnsi()
{ {
var a = connection.Query<int>("select datalength(@x)", var a = connection.Query<int>("select datalength(@x)",
new { x = new DbString { Value = "abc", IsAnsi = true } }).Single(); new { x = new DbString { Value = "abc", IsAnsi = true } }).Single();
......
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