如何解决流利的nhibernate映射IDictionary <int,string>?
| 在网上搜索后,我发现了可以完成大部分工作的映射: 在我的课堂上,我有:public virtual IDictionary<int,string> _properties { get; set; }
并在映射中:
HasMany(x => x._properties)
.AsMap<string>(index => index.Column(\"PropertyID\").Type<int>(),element => element.Column(\"Value\").Type<string>())
.KeyColumn(\"ID\")
.ForeignKeyConstraintName(\"FK_DeftoProperties\")
.Table(\"Definition_Property\")
.Not.LazyLoad()
.Access.Property()
.Cascade.All();
导致此表定义:
create table Definition_Property (
ID UNIQUEIDENTIFIER not null,Value NVARCHAR(255) null,PropertyID INT not null,primary key (ID,PropertyID)
)
但是我需要\“ Value \”大于255,并将映射更改为:
element => element.Column(\"Value\").Type<string>().Length(500)
对表的生成没有任何影响。
如果我使用hbm文件映射它:
我得到了我期望的桌子。
关于如何流畅设置长度的任何想法?
解决方法
...Element(\"Value\",x => x.Length(300))...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。