asp.net-mvc 中的 asp:datalist 相当于什么

发布于 2024-07-30 12:42:54 字数 1523 浏览 6 评论 0原文

我正在将一个站点从 ASP.NET 站点迁移到 ASP.NET,其中一个页面的数据列表如下:

 <asp:DataList ID="MyDataList" runat="server" BackColor="#EEEEEE" CellPadding="10"
    ItemStyle-HorizontalAlign="Center" GridLines="Both" Width="750" RepeatDirection="Horizontal"
    RepeatColumns="4" RepeatLayout="Table" ItemStyle-VerticalAlign="Top">
    <ItemTemplate>
        <table>
            <tr align="center">
                <td valign="top">
                    <table>
                        <tr>
                            <td width="30%">
                            </td>
                            <td>
                                <asp:HyperLink ID="HyperLink1" runat="server">
                                <asp:Image style="cursor:pointer" CssClass="instant ishadow50" ID="lnkEnlarge" runat="server"></asp:Image></asp:HyperLink>
                            </td>
                            <td width="30%">
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr align="center">
                <td>
                    <asp:Label CssClass="Comments" ID="lblComment" runat="server"></asp:Label><br>
                </td>
            </tr>
        </table>
    </ItemTemplate>
</asp:DataList>

ASP.NET-MVC 中的等效项是什么。 我该如何进行迁移?

i am migrating a site over to asp.net from an asp.net site and one of the pages has a datalist as below:

 <asp:DataList ID="MyDataList" runat="server" BackColor="#EEEEEE" CellPadding="10"
    ItemStyle-HorizontalAlign="Center" GridLines="Both" Width="750" RepeatDirection="Horizontal"
    RepeatColumns="4" RepeatLayout="Table" ItemStyle-VerticalAlign="Top">
    <ItemTemplate>
        <table>
            <tr align="center">
                <td valign="top">
                    <table>
                        <tr>
                            <td width="30%">
                            </td>
                            <td>
                                <asp:HyperLink ID="HyperLink1" runat="server">
                                <asp:Image style="cursor:pointer" CssClass="instant ishadow50" ID="lnkEnlarge" runat="server"></asp:Image></asp:HyperLink>
                            </td>
                            <td width="30%">
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr align="center">
                <td>
                    <asp:Label CssClass="Comments" ID="lblComment" runat="server"></asp:Label><br>
                </td>
            </tr>
        </table>
    </ItemTemplate>
</asp:DataList>

what is the equivalent in asp.net-mvc. how would i go about migrating?

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

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

发布评论

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

评论(3

不醒的梦 2024-08-06 12:42:54

ASP.NET MVC 没有服务器控件。
您可以在模型上使用简单的 foreach 循环(也可以使用部分视图)。

不同的选择是编写一个 Html 帮助程序

ASP.NET MVC has no server controls.
you can use a simple foreach loop on your model (you can use a partial view too).

different option is to write a Html helper.

伴我心暖 2024-08-06 12:42:54
@{
        //repeatdirection = Horizontal, RepeatColumns = 4
        const int NumberOfColumns = 4; 
        int skip = 0;
        var items = Model.DataStuff.Skip(skip).Take(NumberOfColumns);
        while(items.Count() > 0) {
            <tr>
                @foreach (var item in items) {
                    <td>
                        @Html.ActionLink(item.Name...etc)
                    </td>
                }
            </tr>
            skip += NumberOfColumns;
            items = Model.Skip(skip).Take(NumberOfColumns);
        }
    }
@{
        //repeatdirection = Horizontal, RepeatColumns = 4
        const int NumberOfColumns = 4; 
        int skip = 0;
        var items = Model.DataStuff.Skip(skip).Take(NumberOfColumns);
        while(items.Count() > 0) {
            <tr>
                @foreach (var item in items) {
                    <td>
                        @Html.ActionLink(item.Name...etc)
                    </td>
                }
            </tr>
            skip += NumberOfColumns;
            items = Model.Skip(skip).Take(NumberOfColumns);
        }
    }
梦太阳 2024-08-06 12:42:54

正如 CD 指出的,基本方法是编写 Html。 把它带回原来的学校。 如果您更喜欢采用更抽象的方法,可以使用一些更高级的帮助器。 对于此类内容,一个不错的选择是 MvcContrib 网格——它通常会让你远离直接 html 生成,同时仍然使用 MVC 风格。

注意:链接指向 MvcContrib 网格的一个版本,该版本在撰写本文时已在 CodePlex 上公开发布,您将需要获取源代码并构建自己的源代码才能利用它。

As CD points out, the basic way is to just write the Html. Take it back to the old school. There are some more advanced helpers avaliable if you prefer to take a more abstracted approach. One good option for stuff like this is the MvcContrib grid -- it will generally keep you out of direct html generation while still working MVC style.

NB: link points to a version of the MvcContrib grid that post-dates the public release on CodePlex at the time of this writing, you will need to grab the source and build your own to take advantage of it.

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