I know it\'s kind of the wrong thing to do, but I\'m dealing with a legacy codebase that has NULLS when it means empty strings and vice versa.
I can\'t immediately
Dapper doesn't call any setter when it sees a null, so options might include:
"" in the constructornull in the accessorSo:
public class SomeDto
{
public SomeDto()
{
Name = "";
}
public string Name {get;set;}
}
or:
public class SomeDto
{
private string name;
public string Name { get {return name ?? "";} set {name = value;} }
}
However, this only applies to reading values; I can't think of a nice way to get dapper to turn "" into null when passing the dto in as the parameter object; options include:
"" to null (perhaps write a string NullIfBlank(this string s) extension method)null in place of "", and have your database query bind to @NameOrNull rather than @Name