作者:jinyan胡_435 | 来源:互联网 | 2023-06-05 08:04
本文由编程笔记#小编为大家整理,主要介绍了Razor语法 if嵌套foreach再嵌套if相关的知识,希望对你有一定的参考价值。 @{html.RenderAction("Cor
本文由编程笔记#小编为大家整理,主要介绍了Razor语法 if嵌套foreach再嵌套if相关的知识,希望对你有一定的参考价值。
@{html.RenderAction("CorpsChengPinYouEnterprise", "WechatVote", new { categoryid = "160" });}
黄色部分的页面指的就是下面的页面内容 这个是.net framework4.6.1框架 此项目最开始使用的是.net framework4框架
@if (Model != null)
{
IList list = Model;
int i = 0;
foreach (var item in list)
{
i++;
string voteid = "votecount_" + @item.id;
string briefs = @item.brief + "";
if (!String.IsNullOrEmpty(briefs) && briefs != "")
briefs = briefs.Replace("
", "
");
@i
@item.vote_count
}
}
.net framework4框架里的代码为
@if (Model != null)
{
IList List = Model;
int i = 0;
foreach (var item in List)
{
i++;
string voteid = "votecount_" + @item.id;
string briefs = @item.brief + "";
if (!String.IsNullOrEmpty(briefs) && briefs != "")
{
briefs = briefs.Replace("
", "
");
}
@i
@if (string.IsNullOrEmpty(item.brief))
{
@item.title
}
else
{
@item.title
企业简介 }
@*
企业简介*@
@item.vote_count
}
}
区别为
if (!String.IsNullOrEmpty(briefs) && briefs != "")
{
briefs = briefs.Replace("
", "
");
}
里面if条件里有大括号{ } 这样切换到框架.net framework4.6.1 并且配置文件和程序集修改正确后 编译会报错 缺少 } 的错误 所以把括号去掉 编译正确
而查资料显示 if语句包含的一行HTML代码必须加括号 即:
报错:
@foreach (var item in ViewBag.TopList)
{
if (!string.IsNullOrWhiteSpace(item.LogoPic_Mobile))
}
正确(if语句包含的一行HTML代码必须加括号):
@foreach (var item in ViewBag.TopList)
{
if (!string.IsNullOrWhiteSpace(item.LogoPic_Mobile))
{
}
}
所以个人猜测加不加括号区别是里面的代码是html代码还是服务器代码。html加{}, 否则不加。