asp.net-mvc – 是否由Razor支持lambda表达式?
发布时间:2020-05-23 17:30:53 所属栏目:asp.Net 来源:互联网
导读:在Razor视图引擎中是否支持lambda表达式/匿名方法? 在剃须刀上我很难表达以下的观点: @Model.ToList().ForEach(i = { if (i.DealerName != null) { text @i.DealerName /text
|
在Razor视图引擎中是否支持lambda表达式/匿名方法? 在剃须刀上我很难表达以下的观点: @Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
<text>
@i.DealerName
</text>
}
}
注意:我知道可以用@foreach解决这个问题,但是我需要一个类似的第三方MVC控件的解决方案。它使用这种机制设置控件的内容。它适用于MVC .ASPX视图,但无法让它与Razor一起使用。 MVC .ASPX等价(我想转换为Razor语法的代码): <% Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
%> <%=i.DealerName%> <%
};
});
%>
这是用于ASP.NET MVC3附带的Razor引擎。 解决方法而不是您的< text> @ i.DealerName< / text>阻止你可以使用Response.Write(i.DealerName);结果是一样的,就像把它放在剃刀页面中一样 – 它将在渲染页面执行。坦率地说 – 我很确定这是什么,它将被编译成无论如何。 此外,由于ForEach()返回void,所以您必须将其作为代码块放在页面中。 @{
Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
Response.Write(i.DealerName);
}
});
}
UPD:如果你有更严格的格式,你可以诉诸这个好的小技巧: @{
Model.ToList().ForEach(i =>
{
if (i.DealerName != null)
{
Response.Write(((Func<dynamic,object>)(
@<text>
<b>Hello Dealer named: @item.DealerName
Multiline support is <em>Beautiful!</em>
</text>)).Invoke(i));
}
});
}
希望有意义:) (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – HttpCache vs Singleton – MVC应用程序的最
- 使用ASP.NET窗体身份验证的WCF服务
- asp.net-mvc-3 – C#.NET MVC3 ModelState.IsValid
- 如何让ASP.NET AJAX通过GZip压缩发送JSON响应?
- asp.net – 如何防止asp:FormView作为表格呈现?
- asp.net-mvc – 在asp.net mvc中实现stackoverflow样式徽章
- VS 2015预览缺少“ASP.NET 5 Web应用程序”项目类型?
- 循环遍历ASP.NET缓存对象中的键
- asp.net Ajax之无刷新评论介绍
- asp.net – 什么放在会话变量中
推荐文章
站长推荐
- asp.net – e.CommandArgument for asp按钮不工作
- asp.net – MVC 3 System.Web.Optimization捆绑单
- asp.net-core – Razor模板中的特殊字符未正确编
- asp.net-mvc-4 – MVC4不要在重定向上使用主布局
- asp.net – 此版本的SQL Server不支持用户实例登
- asp.net-mvc – 自定义模型绑定器不验证模型
- asp.net-mvc – 具有持久HTTP连接的IDbConnectio
- asp.net – 我可以在服务器端调用CustomValidato
- 在ASP.NET中上传文件时运行病毒扫描
- asp.net – 可接受的安全性:使用Paramatised SQ
热点阅读
