gpt4 book ai didi

asp.net-mvc - 考虑逻辑是不是不好的做法

转载 作者:行者123 更新时间:2023-12-05 00:18:16 28 4
gpt4 key购买 nike

我有一张 table ,上面的每个项目都有一个状态或状态,根据这个状态,您可以购买一个项目或将其设置在等待列表中。

为此,我有一个 @if语句在我的 Razor View 中检查状态,然后有条件地选择为适当的操作呈现哪个按钮。

我在 session 和角色的其他 View 中有一些类似的逻辑。

这是一个好习惯吗?还有其他方法可以做到吗?

@if( @item.status == 1 ) {
<a class="btn btn-default" href="Items/Buy/@item.id">Buy</a>
} else if ( item.status == 2 ) {
<a class="btn btn-default" href="Items/SetList/@item.id">Add To List</a>
}

最佳答案

这并不是世界上最糟糕的事情,因为它被用来在 View 中显示元素。但是,我会为 HtmlHelper 制作一个扩展方法来呈现您尝试创建的操作链接。就像是:

public static class HtmlHelperExtensions
{
public static HtmlString RenderStatus(this HtmlHelper helper, ItemModel item)
{
if (item.status == 1)
{
return helper.ActionLink("Buy", "Buy", "Items", new { @class = "btn btn-default" });
}

if (item.status == 2)
{
return helper.ActionLink("Add To List", "SetList", "Items", new { id = item.Id }, new { @class = "btn btn-default" });
}

return new MvcHtmlString("");
}
}

那么在你看来,你需要做的就是调用
@Html.RenderStatus(item)

关于asp.net-mvc - 考虑逻辑是不是不好的做法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38284641/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com