我正在使用 Orchard 1.6,并且正在为我的模块创建部件。我的迁移文件中创建特定表的部分是:
// Creating table SessionInformationRecord
SchemaBuilder.CreateTable("SessionInformationRecord", table => table
.Column("Id", DbType.Int32, column => column.PrimaryKey().Identity())
.Column("TrackInformationRecord_Id", DbType.Int32)
.Column("Title", DbType.String, col => col.Unlimited())
.Column("Description", DbType.String, col => col.Unlimited())
.Column("StartDate", DbType.DateTime)
.Column("EndDate", DbType.DateTime)
.Column("HasEvaluation", DbType.Boolean)
.Column("IsDeleted", DbType.Boolean)
);
标题和描述应该是无限的字符串。但是,当我为超过 4000 个字符的字段输入内容时,我收到此错误:
{"@p1 : String truncation: max=4000, len=21588, value=''."}
还有其他方法可以解决这个问题吗?还是字符串的最大值为 4000 个字符?
更新:
除了数据库方面,我读到您还必须在 NHibernate 方面处理它,以确保它不会截断字符串。人们告诉我添加属性:
[StringLengthMax]
但是,我的模型只识别 [StringLength] 属性。为了使用 [StringLengthMax] 属性,我需要导入什么命名空间或类?