Я не придирчив в Вас, но необходимо ли перефразировать вопрос быть , Как Вы убеждаете других разработчиков работать командой?
Серьезно, некоторые люди предполагают, что можно прочитать их мысли.
, Если Вы - часть гибкой команды, код коллективно принадлежит, поэтому когда Вы видите непрокомментированный, неловкий, или трудно считать код, разрешение и изменение (осуществляют рефакторинг) его так, Вы понимаете его. Если люди жалуются, говорят им, почему и первичны. То, что Вы нашли его непостижимым, и никто не владеет кодом.
Использование списка List
в C # 3.0:
var config = Configurations.Find(item => item.Name == "myConfig");
В C # 2.0 / .NET 2.0 вы можете использовать что-то вроде следующего (синтаксис может быть немного неправильным, поскольку я не писал делегатов таким образом довольно долгое время ... ):
Configuration config = Configurations.Find(
delegate(Configuration item) { return item.Name == "myConfig"; });
Похоже, что вам действительно нужен словарь ( http://msdn.microsoft.com/en-us/library /xfhwa508.aspx).[126ptingСловари специально разработаны для сопоставления пар ключ-значение и обеспечат гораздо лучшую производительность при поиске, чем список.
Попробуйте List (T). Найдите (C # 3.0):
string value = Configurations.Find(config => config.Name == "myConfig").Value;
Вот один из возможных способов использования:
static void Main(string[] args)
{
Configuration c = new Configuration();
Configuration d = new Configuration();
Configuration e = new Configuration();
d.Name = "Test";
e.Name = "Test 23";
c.Configurations = new List<Configuration>();
c.Configurations.Add(d);
c.Configurations.Add(e);
Configuration t = c.Configurations.Find(g => g.Name == "Test");
}
Подумайте об использовании словаря, но если нет:
Ваш вопрос не совсем ясен для меня, один из обоих должен быть вашим ответом.
используя Linq:
var selected = Configurations.Where(conf => conf.Name == "Value");
или
var selected = Configurations.Where(conf => conf.Name == conf.Value);
Если вы этого хотите в списке:
List<Configuration> selected = Configurations
.Where(conf => conf.Name == "Value").ToList();
или
List<Configuration> selected = Configurations
.Where(conf => conf.Name == conf.Value).ToList();