我有一个叫做实用程序的DLL,它包含一些帮助器方法,我想在T4模板中使用一个辅助方法,如<#= tbl.ClassName.ToProper()#>
我想知道这是什么MvcTextTemplateHost.我在我的create.tt中有这个,但我无法在我的bin文件夹中找到它(使用对象查看器搜索).我读了,发现它在我的VisualStudio.Extensions.web.dll中,但我找不到这个DLL
我读过这个
T4引用'MvcTextTemplateHost'和'VisualStudio'.
我想知道这个类有哪些属性和方法.我想要一个t4文本编辑器.我安装了一些,但没有什么能让我为这堂课提供智能感谢谢谢.
如何在模板中使用生成的文件名?我想要这样的事情:
// This file: <#= OutputFileName #> was autogenerated
Run Code Online (Sandbox Code Playgroud)
我怎么能在T4或T4Toolbox中做到这一点?
有没有人完全引用我可以在MVC 3附带的T4模板ControllerWithContext.tt中使用的Host对象的成员?
我已经尝试了我能想到的每一个谷歌搜索,但唯一相关的结果是这个页面:http: //blogs.msdn.com/b/webdevtools/archive/2009/01/29/t4-templates-a-quick -启动引导换ASP净MVC-developers.aspx
但它只显示4个属性(ItemName,NameSpace,ExtraActionMethods,ControllerRootName)而不是完整列表.在模板中有像RelatedProperties,EntitySetName,ModelType和ContextType之类的东西.
我正在尝试查找完整的属性列表,其类型和说明.任何帮助将不胜感激.
请使用以下脚本.注意字符串'/ Home/Index'.使用T4MVC,有没有办法指定这个摆脱魔法字符串?
<script type="text/javascript">
$(document).ready(function () {
$dialog = $('#dialog');
$dialog.dialog({
autoOpen: false,
buttons: { },
open: function(event, ui) {
$(this).load("/Home/Index");
}
});
});
</script>
Run Code Online (Sandbox Code Playgroud) 如何在我们的T4模板生成器中包含自定义实用程序类?我尝试将一个模块添加到项目中,但似乎没有办法将它包含在我的生成器中以使用它的方法.
谢谢.
我已经为我的web和Windows项目的配置文件创建了T4模板.我可以成功生成主web.config,以及其他环境的所有配置,即web.ci.config等.但是,我无法摆脱我的主tt文件上的错误,例如:
- 字符"#",十六进制值0x23在XML名称中是非法的.
- 字符'<',十六进制值0x3c在XML属性值中是非法的.
- 意外的XML声明.XML声明必须是文档中的第一个节点,并且不允许在其前面显示空白字符.
我应该错过一个xml架构或引用,但是什么?
我的文件看起来像:
<#@ template debug="true" hostSpecific="true" #>
<#@ output extension= ".config" #>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
...
<add key="FileUploadFolder" value="<#= this.FileUpload #>" />
...
</configuration>
<#+
string FileUpload="\\\\server\\folder";
#>
Run Code Online (Sandbox Code Playgroud)
这是截图
在工作中,我们刚刚升级到Entity Framework 5.我们的EDMX文件现在还有其他几个节点:
EntityContainer.Context.tt
Run Code Online (Sandbox Code Playgroud)
其中包含生成的DbContext对象和
EntityContainer.tt
Run Code Online (Sandbox Code Playgroud)
其中包含实体本身.
在短时间内,在我们保存EDMX文件时,在EF中添加实体会自动重新生成tt(T4模板).现在突然间我们必须右键单击T4模板并选择"运行自定义工具"以使它们为上下文或实体重新生成.cs文件.
有什么想法可能会发生这种情况吗?
在EDMX中,属性"保存时转换相关文本模板"设置为true,问题仍然存在.
我正在尝试使用T4模板在我的项目中自动生成一些代码使用.我从小开始让我的'脚湿了'这就是我到目前为止所拥有的.
<#@ template debug="false" hostspecific="true" language="C#" #>
<#@ output extension=".cs" #>
<#@ assembly name="C:\Users\username\Documents\Visual Studio 2012\Projects\MyProjectSolution\MyProject\bin\Debug\MyProject.exe" #>
namespace KY_ADJRATE_CLAIM
{
public class OutboundClaim
{
<#
ClaimConfig cc;
#>
}
}
Run Code Online (Sandbox Code Playgroud)
我试过这个
<#@ assembly name="C:\Users\username\Documents\Visual Studio 2012\Projects\MyProjectSolution\MyProject\bin\Debug\MyProject.exe" #>
Run Code Online (Sandbox Code Playgroud)
还有这个
<#@ assembly name="MyProject.exe" #>
Run Code Online (Sandbox Code Playgroud)
但每当我尝试创建一个类的实例时,我得到这个:
命名空间不能直接包含字段或方法等成员.编译转换:找不到类型或命名空间名称'ClaimConfig'(您是否缺少using指令或程序集引用?)
我想要做的是通过T4模板访问我的项目中的ClaimConfig类.
任何帮助将不胜感激.
t4 ×10
.net ×2
asp.net-mvc ×2
asp.net ×1
c# ×1
c#-4.0 ×1
config ×1
scaffolding ×1
t4-toolbox ×1
t4mvc ×1
vb.net ×1
xml ×1