【发布时间】:2012-02-20 17:01:41
【问题描述】:
在我的“业务对象”中显示“管理表”的正确方法是什么?我的地址对象上有以下内容。
public class Address
{
public int AddressID { get; set; }
public KeyValuePair<short, string> County { get; set; }
...
}
现在我将如何实例化这个对象,就KeyValuePair<,> 属性而言?
我的猜测是:
var myAddress = new Address { AddressID = 3, County = new KeyValuePair<short, string>(32, "La Crosse")}
编辑
这是我根据另一位程序员的建议用KeyValuePair<> 替换的内容。
.....Address.cs.....
public County County { get; set; }
.....County.cs.....
public class County
{
public short? CountyID { get; set; }
public string CountyName { get; set; }
}
在这两种方法之间有更好的方法还是第三种更好的方法?
【问题讨论】:
-
KVP 的值是否来自数据库?是否可以将它们提取为枚举类型,以便您的幻数/字符不那么神奇?
-
我建议不要在这种情况下使用
KeyValuePair;开发人员无法清楚地看到Key或Value实际上是什么(Key是County是什么?。创建具有适当属性名称的自己的类型,以使您和同事的生活更轻松。 -
我已经删除了不相关的成员。如果您不同意,请回复。
-
您的代码有效。那你的问题是什么?
-
@Lukazoid:请查看我的编辑,让我知道这是否更有意义或者您的陈述是否仍然成立。