0

我正在使用 Dapper.Rainbow 并在插入名为“用户”的表时遇到了问题。

我可以让其他表完美地工作,但是当尝试插入Users表时它会失败。

[ ]我使用了 Sql Query 检查器来确定生成的查询在表名周围没有任何内容。一旦我用方括号重新制作查询,它​​就可以正常工作。

当我使用Table<User>(this, "[Users]");它时,它将私有属性设置likelyTableName为正确的值([User])。

但是,一旦database.Init(dbconn,3);它将likelyTableName字符串更改回User.

我一直在检查 Dapper-dot-net Github 项目,并查看了 dapper.rainbow 的 database.cs 源代码,但我不知所措,因为它的一部分在 IL 中。

有没有办法让 dapper.rainbow 使用名为User??的表?

4

1 回答 1

1

对表(或字段、视图等)名称使用保留字确实是个坏主意。我认为这可能会给您带来问题。宁可硬着头皮一次改名,也不要永远与之抗争。

作为参考,这里是保留字列表(避免):

http://msdn.microsoft.com/en-us/library/ms189822.aspx

于 2013-05-18T21:02:00.450 回答