DevExpress ASP.NET MVC - GridView回调导致无限加载动画

时间:2014-01-22 02:39:10

标签: c# asp.net asp.net-mvc devexpress devexpress-mvc

我在MVC GridView控件上遇到一些回调问题。当页面首次加载时,一切看起来都不错,但是当我执行任何需要回调的操作时(例如,如果我尝试更改页面),操作成功执行,但加载动画显示在网格上并且永远不会消失。 / p>

这里奇怪的是,实际的回调功能很好 - 如果我改为第2页,网格更新第2页,我可以看到所有正确的数据,但加载动画永远不会消失。如果我通过单击标题更改排序,则会应用新排序并且网格会刷新,但加载动画仍会显示且不会消失。

我的代码如下(这只是一个“搞乱”的学习练习,所以请不要评论与手头问题无关的代码。)

查看 - Browse.cshtml

@model IEnumerable<VTData.Models.Client>

@{
    ViewBag.Title = "Browse";
}

<h1>Browse clients</h1>

@Html.Partial("BrowsePartial", Model)

查看 - BrowsePartial.cshtml

@model IEnumerable<VTData.Models.Client>

@Html.DevExpress().GridView(
    settings =>
    {
        settings.Name = "ClientGrid";
        settings.CallbackRouteValues = new {
            Controller = "Clients",
            Action = "ClientsPartial"
        };
        settings.KeyFieldName = "Id";
        settings.Columns.Add("Code");
        settings.Columns.Add("Given");
        settings.Columns.Add("Surname");
    }
).Bind(Model).GetHtml()

控制器

public class ClientsController : Controller
{
    //
    // GET: /Clients/
    public ActionResult Index()
    {
        var db = VTData.VTDatabase.Connect();
        var sql = PetaPoco.Sql.Builder.Select("*").From("client");

        return View("Browse", db.Query<Client>(sql));
    }

    public ActionResult ClientsPartial()
    {
        var db = VTData.VTDatabase.Connect();
        var sql = PetaPoco.Sql.Builder.Select("*").From("client");

        return PartialView("BrowsePartial", db.Query<Client>(sql));
    }
}

我无法弄清楚这里出了什么问题。有什么想法吗?

2 个答案:

答案 0 :(得分:3)

对于遇到这个问题的任何人来说,这都是简单的,完全令人尴尬的。问题是我在包含DevExpress javascripts之前没有包含jQuery。糟糕!

答案 1 :(得分:1)

我遇到了类似的问题并解决了。当Dev express控件试图加载数据时,服务器端有一个空引用异常。解决该异常使我的控制工作正常。