无法识别列定义的长度属性
警告:我对 NHibernate 和 Fluent 仍然非常新手!
我有一个这样的映射:
Map(x => x.Category).Column("CATEGORY")
.CustomType("String")
.Access.Property()
.Generated.Never()
.CustomSqlType("nvarchar(250)") // <----
.Not.Nullable()
.Length(250); // <----
我需要定义 .CustomSqlType("nvarchar(250)") 来获取宽度为250 当我让 NH 为我创建架构时。如果我省略“(250)”,则会创建宽度为 1 的列。我想知道“.Length(250)”设置有什么用。
我也很难找到有关“.Generate.Never()”设置的文档。这是什么意思?
对于那些可能会问的人:他从哪里获得映射代码?我使用一个工具为初学者生成它,我很高兴它或多或少有效。现在我试着理解它......
有人可以帮忙吗?
Warning: I am still very new to NHibernate and Fluent!
I have a mapping like this:
Map(x => x.Category).Column("CATEGORY")
.CustomType("String")
.Access.Property()
.Generated.Never()
.CustomSqlType("nvarchar(250)") // <----
.Not.Nullable()
.Length(250); // <----
I need to define .CustomSqlType("nvarchar(250)") to get a column with a width of 250 when I let NH create the schema for me. If I omit the "(250)" a column with a width of 1 is created. I am wondering what the ".Length(250)" setting is good for.
I also have trouble to find documentation about the ".Generated.Never()" setting. What does it mean?
For those of you that might ask: where did he get tat mapping code from? I used a tool to generate it for a starter and I am happy that it works more or less. Now I try to understand it...
Can someone please help out?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
NH 使用
.Length(250);
来确定数据库中字符串属性的长度(通常为 nvarchar)。 AFAIK 当您指定自己的自定义sqltype 时,它会被完全忽略NH uses
.Length(250);
to determine the length of a string property in the database (normally nvarchar). AFAIK it is ignored completely when you specify your own customsqltype