我有一個看起來像這樣的方法:有沒有辦法來消除這種代碼重複
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