MVC:在 T4 模板中获取 jQuery Intellisense
有没有办法在 T4-Templates 中获得 jQuery 支持/智能感知?在普通的js-Files
中,
我可以编写
/// <reference path="/Scripts/jQuery/jquery-1.6.2-vsdoc.js" />
但是如何在T4-Templates
中做到这一点?
编辑
我们想要这样做的原因:因为我们将 JavaScript 分离在外部 js 文件中。这样做意味着不再可能在 JavaScript 中使用 c# 代码来避免魔术字符串。例如:
我们不写:
$j.ajax({
url: '/Home/Edit'
type: 'POST',
dataType: 'html'
data: {},
error: function() {
DisplayMessage("Error while generating filter dialog");
}
});
我们写:
$j.ajax({
url: '<#= ControllerViewNameProvider.FilterSettings.ControllerName #>/<#= ControllerViewNameProvider.FilterSettings.Actions.GetFilterDialog #>'
type: '<#= EnvironmentStringProvider.HttpMethodPOST #>',
dataType: '<#= EnvironmentStringProvider.DataTypeHTML #>'
data: {},
error: function() {
DisplayMessage("<#= MessageStringProvider.ErrorMessages.GenerateFilterDialogFailed #>");
}
});
Is there any way to get jQuery Support / Intellisense in T4-Templates? In normal js-Files
,
I can write
/// <reference path="/Scripts/jQuery/jquery-1.6.2-vsdoc.js" />
But how to do it in T4-Templates
?
EDIT
The reason why we want to do so: because we seperated our JavaScript in external js-Files. Doing so means that it is no longer possible to use c#-Code in our JavaScript to avoid magic strings. For example:
Instead of writing:
$j.ajax({
url: '/Home/Edit'
type: 'POST',
dataType: 'html'
data: {},
error: function() {
DisplayMessage("Error while generating filter dialog");
}
});
we write:
$j.ajax({
url: '<#= ControllerViewNameProvider.FilterSettings.ControllerName #>/<#= ControllerViewNameProvider.FilterSettings.Actions.GetFilterDialog #>'
type: '<#= EnvironmentStringProvider.HttpMethodPOST #>',
dataType: '<#= EnvironmentStringProvider.DataTypeHTML #>'
data: {},
error: function() {
DisplayMessage("<#= MessageStringProvider.ErrorMessages.GenerateFilterDialogFailed #>");
}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
简而言之:不幸的是没有
办法(至少我不知道)将 javascript 智能感知引入 T4。它必须通过插件提供,就像 C# 代码一样。
但有一个不同的问题困扰着我:jQuery 代码首先在 T4 模板中做什么?无论如何,它是一个设计时模板,而不是运行时模板。
Short: Unfortunately not
There's no way (at least not that I'm aware of) of getting javascript intellisense into T4. It would have to be provided by means of an addon just like it is for c# code.
But there's a different question that bothers me: What has jQuery code to do in a T4 template in the first place? It's a design time template anyway and not runtime.