Пригождается для поблочного тестирования:
public static IList<T> Clone<T>(this IList<T> list) where T : ICloneable
{
var ret = new List<T>(list.Count);
foreach (var item in list)
ret.Add((T)item.Clone());
// done
return ret;
}
сериям А их нравится TWith2Sugars, альтернативный сокращенный синтаксис:
public static long? ToNullableInt64(this string val)
{
long ret;
return Int64.TryParse(val, out ret) ? ret : new long?();
}
И наконец это - уже является там чем-то в BCL, который делает следующее?
public static void Split<T>(this T[] array,
Func<T,bool> determinator,
IList<T> onTrue,
IList<T> onFalse)
{
if (onTrue == null)
onTrue = new List<T>();
else
onTrue.Clear();
if (onFalse == null)
onFalse = new List<T>();
else
onFalse.Clear();
if (determinator == null)
return;
foreach (var item in array)
{
if (determinator(item))
onTrue.Add(item);
else
onFalse.Add(item);
}
}
Это оказалось намного проще, чем казалось. Я решил проблему с помощью следующего сообщения в блоге: http://weblogs.asp.net/salimfayad/archive/2008/07/09/linq-to-entities-join-queries.aspx
Ключ Для этого решения необходимо применить фильтр названия группы к подмножеству Bands коллекции музыкального стиля.
var result=(from m in _entities.MusicStyle
from b in m.Band
where b.Name.Contains(search)
select new {
BandName = b.Name,
m.ID,
m.Name,
m.Description
});
обратите внимание на строку
from b IN m.Band
Это гарантирует, что вы фильтруете только группы, которые имеют музыкальный стиль.
Спасибо за ваш ответов, но ни один из них не решил мою проблему.
Адаптер региона и контекст региона)Управление (включая создание новых команд)
, интервью с командой Prism
] Сначала просмотр или докладчик?
сообщения в блоге
10 вещей, которые нужно знать о Silverlight Prism (обзор всех ресурсов)