TGViewer
.и в продакшен .и в продакшен @devfounder · 2.92K subscribers
Post #18 819
Врядли меня читает хоть один сишарпер, но хочу поделиться небольшим хаком, т.к. это общая боль, не только в C#.

Все мы любим тринарный оператор x ? y : z и часто юзаем его для конкатенации строк, например, вот так

var sql = "SELECT x FROM y WHERE z " + (condition ? " AND xyz" : "");

Но чаще вот так - это в разметке, во вьюхах:

<div class='someclass @(condition ? "anotherclass" : "")'>

(так делают не только дотнетчики, а вообще все)

Вот эта дурацкая часть : "" меня бесила много лет.

И не только меня, Майкрософту даже в гитхаб поставили issue - "сделайте в C# 9 тернарный оператор без правой части" (не уверен, кстати, что стоит). Да и в гугле вот такой поиск ternary operator without else site:stackoverflow.com выдает аж 62 тысячи результатов только со Stackoverflow, народ жалуется на всех языках - от джаваскрипта до питона.

Как решать эту проблему в сишарпе - запиливаем вот такой экстеншен для bool под названием Then

 public static T Then<T>(this bool value, T result)
{
return value ? result : default(T);
}

(можно, кстати, не выпендриваться с дженериком, а просто сделать string. но так красивее)

И жить сразу намного проще. Смотрите, какой охуенный код:

<div class='someclass @condition.Then("anotherclass")'>
More from @devfounder
  1. Jul 11, 2026Apple ночью подала в суд на OpenAI. Текст иска прям производственный триллер и промышленны…
  2. Jun 14, 2026Как запрещали Фейбл • Близкий партнер как Anthropic, так и правительства США, который тест…
  3. Apr 17, 2026Давайте объясню, а то многие не понимают, почему из-за ИИ у всех более-менее неглупых люде…
  4. Oct 30, 2025Курсор 2.0 так меня выбесил, что вчера ночью написал рейдж-пост https://www.jitbit.com/ale…
  5. Jul 29, 2025Джек Дорси (фаундер Твиттера) зачем-то пошел и за одни выходные запилил Bitchat (он реальн…
  6. Jun 11, 2025Apple выпустила исследование "The illusion of thinking". О том, что "думающий режим" AI-мо…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →