我有一个看起来像这样的方法:有没有办法来消除这种代码重复
private double GetX()
{
if (Servings.Count > 0)
{
return Servings[0].X;
}
if (!string.IsNullOrEmpty(Description))
{
FoodDescriptionParser parser = new FoodDescriptionParser();
return parser.Parse(Description).X;
}
return 0;
}
和我有一个看起来像这样一种方法:
private double GetY()
{
if (Servings.Count > 0)
{
return Servings[0].Y;
}
if (!string.IsNullOrEmpty(Description))
{
FoodDescriptionParser parser = new FoodDescriptionParser();
return parser.Parse(Description).Y;
}
return 0;
}
有什么办法巩固这是唯一不同的是属性名称?
您使用的是什么版本的.NET?我可以想到在.NET 4中使用一些简洁的方法。 – sblom 2010-04-25 16:40:27
如果你有很多这样的属性,你可以使用反射(PropertyDescriptor)。如果只有2-3个属性,它往往是缓慢的和不值得的。 – dbkk 2010-04-25 16:40:36
@sblom - 3.5是dotnet的版本 – leora 2010-04-25 16:43:28