是否可以在t4模板的注释中使用拉丁字符?

时间:2012-01-25 19:03:53

标签: c# asp.net-mvc-3 templates t4

我正在尝试在我的项目中添加控制器的t4模板中创建葡萄牙语注释。

t4模板中的评论:

/// <summary>
/// Controller que trata as requisições de pesquisa, inclusão, alteração e exclusão de <#= mvcHost.ControllerName.Replace("Controller", "") #>.
/// </summary>

问题是当我添加控制器时,注释如下所示:

/// <summary>
/// Controller que trata as requisi��es de pesquisa, inclus�o, altera��o e exclus�o de Teste.
/// </summary>

Obs:方形 是黑色的“钻石”符号。

那么,我如何在t4模板中使用拉丁字符?

我的模板:

<#@ template language="C#" HostSpecific="True" #>
<#@ output extension=".cs" encoding="UTF-8" #> 
<#
MvcTextTemplateHost mvcHost = (MvcTextTemplateHost)(Host);
#>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace <#= mvcHost.Namespace #>
{
    /// <summary>
    /// Controller que trata as requisições de pesquisa, inclusão, alteração e exclusão de <#= mvcHost.ControllerName.Replace("Controller", "") #>.
    /// </summary>
    public class <#= mvcHost.ControllerName #> : Controller
    {
         // The class code
    }
}

2 个答案:

答案 0 :(得分:2)

尝试明确指定模板输出的编码:

<#@ output extension=".cs" encoding="UTF-8" #>

修改:您的代码在我的网站上正常运行(删除mvcHost部分后)。

尝试通过对每个模板执行此过程将模板及其输出文件重新保存为UTF-8:

  1. 在Visual Studio中打开它
  2. 点击文件,另存为...
  3. 选择使用编码保存...(见下文)
  4. 确保选择了UTF-8
  5. 点击确定
  6. enter image description here enter image description here

答案 1 :(得分:0)

尝试写下这样的字符

inclus&atilde;o

请参阅HTML代码表here