我打算用ASP.NET 3.5运行jQuery和AJAX。在Visual Studio开发服务器(Cassini)上,对.aspx页面的调用太慢。大约需要30秒。然后,如果我调试它会在断点处停止,它也会返回带有日期的JSON。但是,发布到IIS网站的相同代码运行良好并且运行速度很快。
环境:(Windows Vista 64 + Visual Studio 2008)
ASPX页面
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Calling a page method with jQuery</title>
<script type="text/javascript" src="Scripts/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="Scripts/Default.js"></script>
</head>
<body>
<div id="Result">Click here for the time.</div>
</body>
</html>
file - Scripts / Default.js
$(document).ready(function() {
// Add the page method call as an onclick handler for the div.
$("#Result").click(function() {
$.ajax({
type: "POST",
url: "Default.aspx/GetDate",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
// Replace the div's content with the page method's return.
$("#Result").text(msg.d);
}
});
});
});
file - Default.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : System.Web.UI.Page
{
[WebMethod]
public static string GetDate()
{
return DateTime.Now.ToString();
}
}
答案 0 :(得分:3)
如果您是第一次编译并运行应用程序,这是正常的。 IIS必须编译应用程序并将其放入缓存中。这只是第一次发生。如果您在没有调试的情况下访问同一页面,则不应该花那么长时间。在第一次之后,对同一页面的每个其他请求都应该很快。
一起讨价还价检查缓存中是否有符号