Чтобы использовать параметр StringComparison
, необходимо правильно определить этот метод.
Это то, что тебе нужно?:
public static IQueryable<testItem> PropertyContainsNEW(this IQueryable<testItem> source,
Expression<Func<testItem, string>> selector,
string value)
{
var parameter = Expression.Parameter(typeof(testItem), "x");
var property = Expression.Property(parameter, ((MemberExpression)selector.Body).Member.Name);
var search = Expression.Constant(value, typeof(string));
var parms = new Expression[] { search,
Expression.Constant(StringComparison.OrdinalIgnoreCase) };
var method = typeof(string).GetMethod("Contains", new[] { typeof(string), typeof(StringComparison) });
var containsMethodExp = Expression.Call(property, method, parms);
var predicate = Expression.Lambda<Func<testItem, bool>>(containsMethodExp, parameter);
return source.Where(predicate);
}
Некоторые из Вас должны использовать его, как только Вы возможно можете. Первая версия должна быть упрощена только с наиболее существенными особенностями, в которых Вы нуждаетесь для использования ее в качестве (в этом случае) редактор. После того как Вы начинаете использовать его, Вы узнаете второпях, какие функции важны.
<напыщенная речь>
не производите корм для собак, затем Вы не должны есть корм для собак.
каков источник этой больной и глупой фразы так или иначе? собаки не производят своей собственной еды (за одним вульгарным исключением)...
</напыщенная речь>
спросите премьер-министра, что более важно: использование разрабатываемого продукта, чтобы сделать разработка или создание качества кодирует вовремя? если существует конфликт, который более важен?
ответ здравого смысла: используйте вещь, которую Вы создаете, когда это лучше, чем инструменты, Вы имеете.
Некоторое время во время проекта, с помощью ошибочного редактора собирается замедлить проект и будет продуктивный счетчик.
Кажется, что у Вас есть свой ответ. Время для переключения - когда проект не собирается препятствовать на производительности.
Вы не должны переключаться на использование редактора разработки исключительно. Начните использовать его, пока это не влияет на Ваше производство, составьте список вещей, которые проблематичны, фиксируют их, повторяются, пока Вы не можете продуктивно использовать его большая часть/все время.
Это - один из тех, "он зависит" вопросы. Некоторое руководство:
Возможно, самое полезное руководство - то, что я называю "Правилом Headrick" после коллеги, который сначала объяснил это мне:
При необходимости в ком-то для выполнения чего-то, сделайте это болезненным для него для не выполнения его!
Оборот, конечно, должен сделать это радостным, чтобы сделать проект как быстро и а также возможный. Лично, я люблю создавать и использовать инструменты, таким образом, я подал бы корм для собак так же быстро как разрешения на благоразумие. Но мой коллега был садистом и ответит, "как только это компилирует!"
Удача с Вашим проектом!
В зависимости от того, как разработка в том, чтобы быть сделанным можно переключиться ранее или позже. Если Вы используете методологию TDD или где нахождение и исправление ошибок выше в списке, я запустил бы каждый раз, когда у Вас есть достаточно функций, Вы чувствуете, помог бы Вашей повседневной жизни. Это могло быть действительно ранним в разработке при приоритизации функций эффективно.
Иначе я ожидал бы, пока Вы не добираетесь до некоторых более поздних этапов пред альфа или пред бета. Это означает, что Вы не чувствуете слишком большого количества боли рано в разработке.
Как упомянуто другим, если можно изменить усилия по разработке попытаться сделать продукт применимым ранее, делают это! Я рекомендовал бы сделать, чтобы люди начали использовать продукт всерьез как можно раньше, чтобы помочь оценить различные функции и присоединить Ваших исходных пользователей эмоционально к продукту. Разработчик, который заботится, будет часто вставлять то дополнительное усилие сделать проект просто этим намного лучше.
Я предполагаю, что корректный ответ - то, как только Вы можете. Конечно, использование ошибочной версии собирается замедлить Вас сначала, но затем Вы выполните QA, поскольку Вы разрабатываете так в конечном счете, Вы сэкономите время. Я предложу, чтобы некоторые Ваши команды переключились а не целая команда для предотвращения большого хранения, если существует блокировщик в приложении.
Это о нахождении, какой Ваша "критическая масса" функций. Если это - просто вопрос ошибок и не функций, переключитесь теперь. Исправьте свои ошибки. Если Вы испытываете необходимость, чтобы сделать разработку комплекта, прежде чем Ваш инструмент станет полезным, закончите те критические функции и затем переключитесь.
И я искренне надеюсь, что Вы не пишете редактору!;-)
все о размере, масштабируемости и объеме. Если бы продукт обеспечил бы, ценный успех от подхода "корма для собак" затем как можно скорее был бы корректным ответом. Опыт конечного пользователя диктует конечный результат использования продукта.
Когда корм для собак становится аппетитным И как можно скорее. Я предполагаю, что это - другой способ сказать, что необходимо поставить значение рано и часто. И, между прочим, никогда не поставляйте известное ошибочное программное обеспечение. Меньше функций без ошибок лучше, чем больше функций с ошибками.
Вопрос бессмыслен при применении к программному обеспечению группа разработчиков не будет использовать себя, таким образом, разработчики должны использовать его, как только выполнимо. "Выполнимый" означает, что это будет работать обоснованно хорошо и не повредит вещи слишком ужасно.
При разработке текстового редактора разработчики должны использовать его рано, так как ошибки не будут крайне важными. При разработке системы управления версиями разработчики должны использовать его только, после того как это, как показывали, было звуковым. Это было что-то вроде грандиозного предприятия когда команда Подверсии, переключенная далеко от их серверов CVS.
Одна идея состояла бы в том, чтобы иметь ранее и позже приемные родители среди команды, поскольку более поздние приемные родители, вероятно, определят вещи, более ранние стали слепыми к.
Не начинайте использовать его, пока это не достигнет "Альфа-" стадии. Это должно иметь все основные завершенные функции и никакие известные критические ошибки. Затем можно начать использовать его.
Также важно сделать, чтобы целевые пользователи испытали его, не только разработчики (если это не инструмент разработчика).
Вы хотите иметь достаточно времени разработки в запасе для помещений в как можно большее количество функций "Would not it be great if it did this?".