所以我们有大约90个网格。为了标准化列宽等,我正在考虑将审计跟踪字段拉入某种基类,但是我不确定这样做的可能性。我们有六个字段用于创建日期,上次更改日期和删除日期以及执行日期,它们位于每个网格的末尾。有没有一种方法可以在一个普通的地方生成它们并包含它们?
是
要解决此问题,您需要将extension method写入GridBuilder类。
由于要在末尾添加审计跟踪列,因此您将采用与found in this solution和this solution相同的策略:
.AddAuditTrailColumns()
.AddAuditTrailColumns()
它看起来像:
public static class Extensions
{
public static GridBuilder<T> AddAuditTrailColumns<T>(this GridBuilder<T> builder) where T: class
{
//add audit trail columns
builder.Columns(columns =>
{
columns.Bound(p => p.createDate).Filterable(false);
columns.Bound(p => p.lastChangeDate);
columns.Bound(p => p.deleteDate);
columns.Bound(p => p.lastChangedBy);
});
return builder;
}
}
在模板中
@(Html.Kendo.Grid<Product>("Grid74")
.BindTo(Model)
.Columns(columns =>
{
columns.Bound(p => p.Name);
columns.Bound(p => p.Description);
})
.AddAuditTrailColumns()
)
请不要仅复制此代码并开始运行,因为我尚未对此进行编译或使用VS进行过测试。但是理论在那里并且应该起作用。
我为您的本能尽可能地重复使用表示赞赏。维护这90个网格的人员将可以轻松完成工作,最终您将减少工作量。双赢。