我的MVC 4网站使用jQuery Ajax更新我网站的部分内容,而我的网站主要用于修改底层SQL数据库中的信息。我的问题是,即使在本地运行服务器,服务器也不会随机返回PartialView。
我在Windows 8上使用Visual Studio 2012,并在Azure平台上运行服务器。
我应该重新说明服务器没有返回它的部分,因为在19秒后,客户端重试获取数据,它通常成功,但它返回两次(只渲染一次),并且每个返回都保持相同数据(应该如此)。虽然该网站仍然有效,但延迟时间是19秒。
我的想法是,我的配置或返回的PartialViews存在潜在问题,但大多数情况下网站运行正常。
如果我能在调试此错误的下一步行动中获得一些线索,或者对问题有一个好的理论,那就太好了。
最基本的问候
迈克尔(D3vinno)来自控制器的示例代码
public ActionResult _List_Product() {
Database db = new Database(Session["database"] as string);
db.Connect();
DataTable dataTable = null;
using (SqlCommand command = db.GetSqlConnection().CreateCommand()) {
command.CommandText = string.Format("SELECT [product].[id], [product].[title] FROM [product]");
SqlDataReader sdr = command.ExecuteReader();
dataTable = new DataTable { TableName = "product" };
if (sdr != null) {
dataTable.Load(sdr);
}
}
db.Close();
return PartialView(dataTable);
}
示例视图
@model System.Data.DataTable
@{
string type = "_Product";
}
<p>
<button class="btn span8" onclick="SetContent('@type', 'new')">New</button>
</p>
<table class="table row-fluid table-condensed" data-provides="rowlink">
@foreach (System.Data.DataRow item in Model.Rows) {
<tr id="show-@item["id"]">
<td id="search-@item["id"]">
<b> @item["title"] </b>
</td>
<td>
<button class="btn pull-right" onclick="SetContent('@type',@item["id"])">Edit</button>
</td>
</tr>
}
</table>
答案 0 :(得分:0)
看起来不像部分视图的任何问题。如果您对此有疑问,请发送一些静态数据,而不是点击数据库。
最佳选择是在查询中选择前3行并查找输出。
我想这会为解决方案提供一些方向!