我正在使用Dapper和DB2。据我所知,DB2本身并不支持GUID,因此我将其存储为字符串并使用dappers访问私有属性来帮助解决问题。
class TestTable
{
public string RequestId
{
get { return RequestGuid.ToString(); }
private set { RequestGuid = new Guid(value); }
}
public Guid RequestGuid { get; set; }
}
我宁愿RequestId是完全私有的,但如果我这样做,则以下失败
connection.Execute("INSERT INTO SOMETABLE (REQUESTID) VALUES(@REQUESTID)"
, new TestTable() { RequestGuid = Guid.NewGuid() });
错误是
Not enough parameters specified. The command requires 1 parameter(s), but only 0 parameter(s) exist in the parameter collection.
是不是应该能够访问私人吸气者?
修改
如果我按照显示的方式使用该类,则connection.Execute
有效。如果我将RequestId设为私有,我会收到错误。