DotVVM-GridView绑定

时间:2018-09-10 18:02:26

标签: gridview binding dotvvm

我在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>

ViewModel:

    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();
    }

我正在使用DotVVM.AspNetCore 2.0.2

1 个答案:

答案 0 :(得分:0)

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