DotVVM-GridView绑定

DotVVM-GridView绑定,gridview,binding,dotvvm,Gridview,Binding,Dotvvm,我在DotVVM中绑定GridView时遇到问题。我从EF Core加载数据,填充GridViewDataSet属性,并将该属性绑定到GridView。在GridView下面,我有一个用于向表中添加新行的表单。当我加载页面时,它确实正确绑定。它显示了它应该显示的所有行,但是当我使用表单添加新行时,它不会刷新GridView中的数据。调用了回发,我在chrome的开发者工具中看到了它。它甚至可以正确发送viewModelDiff,但不会刷新UI。我错过了什么 dothtml: &l

我在DotVVM中绑定GridView时遇到问题。我从EF Core加载数据,填充GridViewDataSet属性,并将该属性绑定到GridView。在GridView下面,我有一个用于向表中添加新行的表单。当我加载页面时,它确实正确绑定。它显示了它应该显示的所有行,但是当我使用表单添加新行时,它不会刷新GridView中的数据。调用了回发,我在chrome的开发者工具中看到了它。它甚至可以正确发送viewModelDiff,但不会刷新UI。我错过了什么

dothtml:

        <dot:GridView DataSource="{value: Stables}" class="table table-responsive-sm table-sm" ShowHeaderWhenNoData="true">
            <Columns>
                <dot:GridViewTextColumn ValueBinding="{value: Id}" HeaderText="ID" />
                <dot:GridViewTextColumn ValueBinding="{value: Name}" HeaderText="Name" />
            </Columns>
        </dot:GridView>

视图模型:

    public GridViewDataSet<Stable> Stables { get; set; } = new GridViewDataSet<Stable>() { PagingOptions = { PageSize = 4 } };

    public override Task PreRender()
    {
        LoadStables();
        return base.PreRender();
    }

    public void LoadStables()
    {
        if (Stables.IsRefreshRequired)
        {
            Stables.LoadFromQueryable(_ctx.Stables);
        }
    }

    public void AddStable()
    {
         _ctx.Stables.Add(new Stable()
        {
            Id = StableId,
            Name = StableName
        });
         _ctx.SaveChanges();
        Stables.RequestRefresh();
    }
公共GridViewDataSet稳定{get;set;}=new GridViewDataSet(){PagingOptions={PageSize=4}; 公共覆盖任务预呈现() { 负载稳定(); 返回base.PreRender(); } 公共马厩() { 如果(需要马厩) { Stables.LoadFromQueryable(_ctx.Stables); } } public void AddStable() { _ctx.Stables.Add(新的Stable() { Id=StableId, Name=StableName }); _ctx.SaveChanges(); Stables.RequestRefresh(); }
我正在使用DotVVM.AspNetCore 2.0.2

我正在尝试将CoreUI boostrap模板与DotVVM一起使用。但是有一些javascript文件阻止DotVVM更新UI。在控制台中,它显示了一些错误。

我已尝试重现该问题,但在我的情况下,它适用于。我能想到它不起作用的几个原因:1。已为GridView或其某些父级打开服务器渲染。GridView以HTML呈现其所有行,并且在服务器呈现模式下无法在回发上添加新行。2.有一些JavaScript错误阻止页面更新-请查看Dev Tools控制台选项卡。3.数据集的页面大小为4-可能新项目就在另一个页面上。