我犯了这个错误的次数 - 当我快速工作,并使用代码完成它发生。我最终得到如下代码:为什么没有关于身份分配的警告?
public class Model : IModel
{
public PropertyNames PropertyNames { get; set; }
public Model(PropertyNames propertyNames)
{
PropertyNames = PropertyNames;
}
}
然后,测试失败的方式稍微不明显,我感到失望。
我只是好奇,如果有一个有效的理由来写这样的代码,如果没有,那么它是否是一个很好的候选人产生警告?
我同意这种行为是很疯狂的。我觉得,至少,代码完成应该更聪明。 – Domenic 2011-05-14 23:29:59
在一个侧面说明,我通常尽量避免在那里我结束了与它的类型相同的名称属性的情况。例如'public PropertyNames Names {get;组; }' – 2011-05-14 23:36:00
您可能想要阅读http://blogs.msdn.com/b/ericlippert/archive/2011/03/03/danger-will-robinson.aspx – 2011-05-15 00:02:14