MVC:在 T4 模板中获取 jQuery Intellisense

发布于 2024-12-18 06:27:46 字数 1170 浏览 4 评论 0原文

有没有办法在 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

何时共饮酒 2024-12-25 06:27:47

简而言之:不幸的是没有

办法(至少我不知道)将 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.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文