- dapper的参数匹配是根据参数名来的,不是根据参数顺序
- dapper的属性不能进行参数转换,尤其是使用下面的格式时是非常错误的。
以下会造成死循环,进而造成栈溢出错误
public string B
{
get { return B; }
set { B = value=="9009"?"helloworld":value; }
}
这种属性不会起作用,set方法并不会起作用
private string b;
public string B
{
get { return b; }
set { b = value=="9009"?"helloworld":value; }
}
应该使用case when来在sql中进行转换
如果数据库中是null,映射到类中会成为default,默认情况下,string的默认值是null
如果类中是null,则映射到可空值数据库字段中为null