gpt4 book ai didi

asp.net-mvc - MVC 逻辑、 View 和助手 - 一个特定的故事

转载 作者:行者123 更新时间:2023-12-02 00:36:42 24 4
gpt4 key购买 nike

我和一位同事正在讨论如何在页面上生成链接。我们应该使用 html helpers 还是在 View 中保留非常简单的 View 逻辑?

对于这个项目,我们使用 CaSTLe Monorail 和 NVelocity View 引擎。我将感谢任何考虑以下两种选择并发表意见的人。

在这个故事中,该链接目前仅用于单个页面。

选项 1 - 有 helper

助手代码

 var action = snail.IsActive ? "ConfirmDeactivate" : "ConfirmActivate";
var routeValues = new Dictionary<string, string>
{
{"action", action},
{"querystring", "id=" + snail.ID}
};
var href = UrlHelper.For(routeValues);

var link = new XElement("a");
link.SetAttributeValue("href", href);
link.SetValue(action.Substring(7));

return link.ToString();

然后在 View 中,我们只是像这样调用助手:
<li>$Html.SnailActivationSwitchLink($item)</li>

选项 2 - 全部在 View 中
#if($snail.IsActive)
<a href="$Url.For("%{action='ConfirmDeactivate', querystring='id=$snail.ID'}")">Deactivate</a>
#else
<a href="$Url.For("%{action='ConfirmActivate', querystring='id=$snail.ID'}")">Activate</a>
#end

最佳答案

对我来说,我更喜欢选项1。在助手上做逻辑更方便,更优雅。

关于asp.net-mvc - MVC 逻辑、 View 和助手 - 一个特定的故事,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4323560/

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