gpt4 book ai didi

c# - if 语句中的 MVC @HTML.Action 导致问题

转载 作者:太空宇宙 更新时间:2023-11-03 20:00:51 25 4
gpt4 key购买 nike

我正在处理合并的编辑/新项目页面,我想检查项目列表,然后在 .Count > 0< 时调用 HTML.Action() 默认值 或遍历列表调用相同的 HTML.Action() 以返回具有不同数据的相同局部 View 。

目前无法运行的代码:

@{ 
var list = @Model.MyList.FindAll(x=>x.somval == someotherval);

if (list.Count == 0)
{
@Html.Action("MyFunc", "MyController", new { MyData = Default.Value });
}
else
{
foreach(var Item in @Model.MyList)
{
@Html.Action("MyFunc", "MyController", new { MyData = Item.Data });
}
}
}

问题是第一个 @Html.Action() 的结束 导致编译错误(预期为“,”)。必须有一些简单的东西我错过了,但我似乎无法通过谷歌搜索找到问题。

编辑添加了完整代码。

编辑:感谢 Ashley Medway 的回答(在我编辑以包含完整代码之前发布)我现在可以使用以下内容

@{var list = @Model.MyList.FindAll(x=>x.somval == someotherval); }

@if (list.Count == 0)
{
Html.Action("MyFunc", "MyController", new { MyData = Default.Value });
}
else
{
foreach(var Item in list)
{
Html.Action("MyFunc", "MyController", new { MyData = Item.Data });
}
}

感谢您的帮助。

最佳答案

您需要在if 语句之前使用@ 并 在foreach 之前删除@

@if (Model.MyList.Count == 0)
{
@Html.Action("MyFunc", "MyController", new { MyData = Default.Value })
}
else
{
foreach (var Item in Model.MyList)
{
@Html.Action("MyFunc", "MyController", new { MyData = Item.Data })
}
}

关于c# - if 语句中的 MVC @HTML.Action 导致问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28566284/

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