1

DBに入ろうとしているリストがあり、次のアサーションを考え出します。

{"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を大きくすることができますが、これは.のタイプには影響しないようですIList<string>

public class DefaultStringLengthConvention : IPropertyConvention
{
    public void Apply(IPropertyInstance instance)
    {
        instance.Length(2000);
    }
}

コンベンションルートに行くのに役立つかもしれない例を知っている人はいますか?

4

1 に答える 1

0

次のようなものを試してみてください。

http://codecasserole.wordpress.com/2011/04/10/fluentstringlengths/

ここでの解決策は、状況に合わせて調整できる可能性があります。

于 2011-04-10T02:14:57.860 に答える