NHibernate 命名约定 - 消除关键字冲突
当 NHibernate 使用 FluentNHibernate 生成列名时,如何避免关键字冲突?
NHibernate 为我生成了这个,并且“Key”是冲突的。
create table Setting (
Key NVARCHAR(MAX) not null,
Value NVARCHAR(MAX) null,
primary key (Key)
)
How do I escape keyword conflicts when NHibernate generates my column names using FluentNHibernate?
NHibernate generated this for me and "Key" is a conflict.
create table Setting (
Key NVARCHAR(MAX) not null,
Value NVARCHAR(MAX) null,
primary key (Key)
)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我有类似的问题。修复方法是使用 FluentNHibernate 的 Column 属性部分将键属性的列名称放在括号中。
这是一个具有有问题的 Key 属性的实体:
以下是如何在映射中指定列名称:
I had a similar problem. The fix is to use FluentNHibernate's Column property part to put brackets around the column name for the key property.
Here is an entity with a problematic Key property:
Here is how to specify the column name in the mapping:
试试这个:
SQL Server 允许您通过在文本两边加上方括号来转义保留字。
Try this:
SQL Server allows you to escape reserved words by putting square brackets around the text.