使用 System.Web.Helpers.WebGrid

发布于 2024-12-29 00:04:57 字数 1127 浏览 0 评论 0原文

我正在尝试使用 WebGrid 在我的模型中显示数据,但遇到了大量问题。我的模型包含以下内容:

public IEnumerable<Auction> Auctions { get; set; }

我所做的是:

@{
    var grid = new WebGrid(Model.Auctions, rowsPerPage: Model.PagingInfo.ItemsPerPage, defaultSort: "Title", canPage: true, canSort: true)
        {SortDirection = SortDirection.Ascending};
    grid.Pager(WebGridPagerModes.NextPrevious);
}

我想根据当前行中的拍卖类型在第一列中显示一些文本,因此我在模型中编写了一个方法:

public string GetAuctionType(Auction auction)
    {
        var type = string.Empty;
        if (auction is LubAuction)
        {
            type = "Lowest unique wins";
        }
        else if (auction is EsfAuction)
        {
            type = "Highest wins";
        }

        return type;
    }

现在,我的视图还包含:

@grid.GetHtml(
        columns: grid.Columns(
                grid.Column("OwnerReference", header: "Owner reference")

            )
        );

问题是如何在上面添加 grid.Columns 行以显示 GetAuctionType 中的文本?

另外,另一个问题是没有出现寻呼机并且排序不起作用。

我将不胜感激所有的帮助。

谢谢,

萨钦

I'm trying to use a WebGrid to display data in my model and am having a huge number of issues. My model contains among other things this:

public IEnumerable<Auction> Auctions { get; set; }

What I have done is:

@{
    var grid = new WebGrid(Model.Auctions, rowsPerPage: Model.PagingInfo.ItemsPerPage, defaultSort: "Title", canPage: true, canSort: true)
        {SortDirection = SortDirection.Ascending};
    grid.Pager(WebGridPagerModes.NextPrevious);
}

I want to display some text in the first column depending on the type of the auction in the current row, so I have written a method in the model:

public string GetAuctionType(Auction auction)
    {
        var type = string.Empty;
        if (auction is LubAuction)
        {
            type = "Lowest unique wins";
        }
        else if (auction is EsfAuction)
        {
            type = "Highest wins";
        }

        return type;
    }

Now, my view also contains:

@grid.GetHtml(
        columns: grid.Columns(
                grid.Column("OwnerReference", header: "Owner reference")

            )
        );

Question is how do I add a grid.Columns line in the above to display the text in GetAuctionType?

Also, the other issue is that there is no pager appearing and sorting does not work.

I would appreciate all help.

Thanks,

Sachin

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我的黑色迷你裙 2025-01-05 00:04:57

我会将 GetAuctionType 逻辑移至部分类,以便您可以像集合中每个对象的普通属性一样访问它。您可能还想看看问题 ASP.NET MVC3 WebGrid 格式:参数 涵盖了 WebGrid 列格式语法的用法。

关于您的其他问题,您在 javascript 控制台中看到任何错误吗?

I would move GetAuctionType logic to a Partial Class so you can access it like a normal property on each object in your collection. You may also want to take a look at question ASP.NET MVC3 WebGrid format: parameter that is covering usage of WebGrid's column format syntax.

Regarding your other issues, do you see any errors in javascript console ?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文