Я пытаюсь использовать движок шаблона t4, но он автоматически включает директиву using внутри блока пространства имен. Он не может найти пространство имен System
, поскольку он ищет в родительском пространстве имен, где установлено собственное пространство имен MyProject.System
.T4 Размещение шаблона за пределами пространства имен
Структура папок/имен
- MyFolder
- OtherFolder
- Система
Файл шаблона
<#@ template language="C#" #>
<#@ assembly name="System.Core" #>
<#@ import namespace="System" #>
<#@ import namespace="System.Linq" #>
<#@ import namespace="System.Text" #>
<#@ import namespace="System.Collections.Generic" #>
<div>Test</div>
CS Файл
namespace MyProject.MyFolder.Templates
{
using System;
using System.Linq;
using System.Text;
using System.Collections.Generic;
}
Ошибка
пространство имен
Linq
не может быть найден вMyProject.System
.
Вопрос
Как заставить t4 поставить, используя внешний блок пространства имен?
Можете ли вы включить шаблон, который создает этот вывод? – rmc00
Я добавил. На данный момент я просто переименовал наше пространство имен System, которое решило проблему. – djmj