Как стать автором
Обновить

Комментарии 4

теоретически это можно сделать и через t4 (без консольного приложения), но я предпочитаю не бороться с добавлением в него ссылок на dll и странным синтаксисом, при отсутствии нормального редактора

В качестве T4 редактора есть плагин ForTea для ReSharper, не так давно его выпустили и для Rider. Для предпочитающих студию без решарпера есть и другие плагины, например нагуглился Devart T4 Editor, но с ним не сталкивался.


Не защищаю какой-то конкретный подход, когда-то удобнее T4, когда-то — Roslyn, просто для информации о том, что такие редакторы есть (может и не самые удобные, но лучше, чем полное отсутствие редактора, как было раньше)

Спасибо за информацию про плагин! Попробую.


Кстати, недавно наткнулся на интересную статью про кодогенерацию, где автор использует scriban в качестве шаблонизатора. На мой взгляд, это более интересная альтернатива t4.

НЛО прилетело и опубликовало эту надпись здесь

Немного дополню, что Roslyn Source Generators никогда не зависили от .NET 5, только от С# 9, а точнее от версии компилятора, который его поддерживает.
В этом можно убедиться и по официальным примерам.


Чтобы быть уверенным, что генератор отработает на всех окружениях можно


  • либо добавить в транзитивную зависимость Microsoft.Net.Compilers.Toolset 3.8.0+, что точно подойдет не всем, особенно публичным библиотекам.
  • либо воспользоваться Uno.SourceGeneration, опыт использования которого я описывал тут.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории