Re: T4
От: Аноним  
Дата: 30.01.10 07:03
Оценка: 8 (1)
Здравствуйте, Niemand

в VS2010 появился Preprocessed Template, который генерирует код, который будет обрабатывать шаблон.
для VS2008 либо написать свой хост,
либо сгенерировать код в 10-ке и перенести в свой проект на VS2008
T4
От: Niemand Австралия  
Дата: 29.01.10 22:00
Оценка:
доброй ночи

пишу уже почти в полном отчаянии и полном остервенении. Есть шаблон t4 с параметром. Ну к примеру вот такой:

<#@ Template Language="C#" #>
...
<#@ property processor="PropertyProcessor" name="@Namespace" type="System.String" #> 

namespace <#= @Namespace #>
{
 ...
}


и есть хитроумный код, который достает сложную структуру параметров, которыми заполняется этот t4. Примочка к студии превращает шаблон в класс на ура, но вот как это сделать автоматически.

Думал сериализовать в какое-то заведомо известное место (e.g. c:\1.txt), а потом делать

<#@ Template Language="C#" #>
...

<# 
var @Namespace = File.ReadAllText("c:\\1.txt");
 #>

namespace <#= @Namespace #>
{
 ...
}


и вызывать тулзу из студии которая генерирует самостоятельные Т4. но не хочется — клиенты засмеют (Т4 для них как раз и делается).

Клянусь, гуглил. Гуглил много. Но чего-то я не понимаю. Все сводится к каким-то тулзам, который из соображений redistribute licensing нежелательны.

Нету ли у кого кусочка c# который передает данные в Т4 и как-то вынимает текст. Заранее спасибо
If the message above is in English — means I'm wasting my work time and work computer to post here. No hard feelings
Re: T4
От: Muromec Россия  
Дата: 30.01.10 20:41
Оценка:
N>Нету ли у кого кусочка c# который передает данные в Т4 и как-то вынимает текст. Заранее спасибо

Привет, скорее всего, смогу тебе помочь, поскольку проделывал похожее. Фишка в основном в наличи файла хоста, о котором упомянули выше, только то, что у olegsych было — на практике у меня не сработало. Здесь выкладывать файл Host'а накладно, длиноват он вроде. Мылом может?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.