【发布时间】:2017-01-10 13:54:09
【问题描述】:
我尝试使用 t4 模板引擎,但它自动在命名空间块内包含 using 指令。它找不到System 命名空间,因为它在我们自己的MyProject.System 命名空间设置的父命名空间内搜索。
文件夹/命名空间结构
- 我的文件夹
- 其他文件夹
- 系统
模板文件
<#@ 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;
}
错误
在
MyProject.System中找不到命名空间Linq。
问题
如何强制 t4 将 using 放在命名空间块之外?
【问题讨论】:
-
您能否包含创建该输出的模板?
-
我添加了它。现在我刚刚重命名了我们的
System命名空间,它解决了这个问题。
标签: c# template-engine t4