【发布时间】:2016-02-24 21:20:23
【问题描述】:
我有两个功能:
public List<string> getAllProperties1()
{
List<string> output = new List<string>();
foreach (MyItem item in getItems())
{
if (!output.Contains(item.property1) &&
item.property1 != null)
{
output.Add(item.property1);
}
}
return output;
}
public List<string> getAllProperties2()
{
List<string> output = new List<string>();
foreach (MyItem item in getItems())
{
if (!output.Contains(item.property2) &&
item.property2 != null)
{
output.Add(item.property2);
}
}
return output;
}
我重命名了函数、项和属性以使事情更简单。我想做的是一个功能,可能更简单——而不是这两个。如何做到这一点?
Property1 和Property 2 都是字符串属性。
【问题讨论】:
-
@TimSchmelter 此代码已被剥离上下文(使用占位符名称而不是实际值),这使得它在 CR 上作为“示例代码”偏离主题。
标签: c# function generics refactoring