优化和组织ASP.NET内容

时间:2014-03-05 17:01:48

标签: asp.net optimization organization

我有一个新的ASP.NET Web Forms项目,该项目大约在6个月前启动。正如该项目仍处于相当新的状态并处于起步阶段,直到最近才出现这个问题。

该应用程序是一个ASP.NET Web Form应用程序,带有C#和SQL Server后端以及HTML5和jQuery前端。该应用程序主要是ajax支持非常少的回发。它主要由对C#WebMethods的jQuery ajax调用组成。

我遇到的问题是我的一些aspx页面大小超过50kb,所有的javascript和jQuery都在aspx页面中。我想将大量的这些javascript和jQuery代码移动到单独的文件中,但大多数都包含使用aspx <%= %>标记的代码,这使得将它移动到一个困难的(如果不是不可能的话)任务。

在代码中查找内容变得乏味。我想知道是否有一种方法来优化代码(通过某种方式减少aspx文件的大小),如果有一个很好的方法来保持所有这些jQuery和javascript更好地组织,以便找到更容易的东西?另外,是否有一个javascript minifier可以缩小aspx页面中的javascript?

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:0)

由于您使用的是AJAX,我假设您使用的是HTML标记,而不是任何Web控件。如果是这样,你可以做的一件事是在aspx页面中运行ViewState。几年前我处于相同的位置,并决定改变Asp.net MVC。我建议你研究一下。它为您提供了更好的开发模型,并且开销最小。

另外,你JS / CSS缩小了吗?我仍然对为什么“......而且大部分内容都包含使用aspx&lt;%=%&gt;标记的代码感到困惑,这使得将它移动到一项困难(如果不是不可能的话)任务。”

WebForms,如MVC,现在也支持JS文件的捆绑和缩小,请查看:http://blogs.msdn.com/b/rickandy/archive/2012/08/14/adding-bundling-and-minification-to-web-forms.aspx

更新:正如OP指出的那样,对于.Net 3.5,您可以使用http://getcassette.net/进行捆绑和缩小。

答案 1 :(得分:0)

避免使用&lt; %%&gt;在你的js中能够引用你的控件你可以将ClientIDMode设置为“静态”,这样你为控件设置的ID就是要渲染的ID,在js中你可以用一些东西引用控件像

asp.net

<asp:DropDownList ID="ddlStateName" runat="server" ClientIDMode="static"></DropdownList>

jquery的

$("#ddlStateName").val();