我有一个列表,我试图进入数据库并提出以下断言:
{"ORA-12899: value too large for column \"GDATA\".\"CNVTOOLBOX\".\"TOOL\" (actual: 387, maximum: 255)\n"}
我正在使用以下内容覆盖自动映射:
public class CnvRootMap : IAutoMappingOverride<CnvRoot>
{
public void Override(AutoMapping<CnvRoot> mapping)
{
mapping.Id(x => x.Id, "CnvRootID");
mapping.HasMany(x => x.Toolbox)
.AsBag()
.Table("CnvToolbox")
.Element("Tool", m => m.Type<string>());
}
}
我确定我遗漏了一些简单的东西,但是有没有办法像你一样为列指定 .Length mapping.Map(x => x.StateLog).Length(2000);
?
提前致谢
编辑
使用以下约定,我可以将所有字符串更改为更大的 .Length,但这似乎不会影响 .Length 的类型IList<string>
。
public class DefaultStringLengthConvention : IPropertyConvention
{
public void Apply(IPropertyInstance instance)
{
instance.Length(2000);
}
}
有人知道一个可能有助于走公约路线的例子吗?