0

在 C# 中将 EF 与 Winforms 一起使用。我想使用部分类向我们的实体添加完整的自定义属性。所有实体都已经有带有验证内容的部分类等等,所以我只需添加我需要的属性。完整属性是指具有 getter 和 setter 的属性,而不仅仅是计算/只读属性。我想这样做主要是为了直接处理一些设计不良或有其他问题的数据库映射属性。例如,一种情况是这样的:

// entity class, generated
public partial class Customer
{
  public string Spot {get;set}
}

// partial class, manually changed
public partial class Customer
{
  public int? xxxSpot 
          { get   {  return Int32.Parse(Spot.Trim()); }  // some code omitted 
          { set   { Spot = value.ToString().PadLeft(5); }
}

因此,我的自定义属性将围绕实体的现有数据库映射属性构建。我想像使用普通属性一样使用这些自定义属性,即将它们绑定到 UI 控件等。我试过一个,到目前为止效果很好。这是一个好主意吗?如果不是,为什么?这样做时我还应该考虑什么?

4

1 回答 1

1

您已经回答了自己的问题 - 它有效,没有理由不这样做。如果您想改进实体的设计,您甚至可以尝试更改映射属性的可见性,以确保其他类必须仅使用您的自定义属性和附加逻辑。

于 2012-06-04T08:30:20.943 回答