首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何简化此表达式(razor)

如何简化此表达式(razor)
EN

Stack Overflow用户
提问于 2019-02-14 03:38:02
回答 2查看 50关注 0票数 0

我如何简化这个剃刀表达式:

代码语言:javascript
运行
复制
    @if (Model.CarImages == null)
    {
        <text>var CarImages = [];</text>
    }
    else
    {
        <text>var CarImages = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.CarImages));</text>
    }
EN

Stack Overflow用户

发布于 2019-02-14 03:41:26

我想最理想的方法是让CarImages永远不做null。在模型中初始化:

代码语言:javascript
运行
复制
public IList<SomeType> CarImages { get; set; } = new List<SomeType>();

我主要是猜测类型,使用你正在使用的任何集合/对象。但重点是初始化它。无论您如何填充它,请确保您总是设置一个有效的列表。即使它是一个空的。

那么你的视图就更简单了:

代码语言:javascript
运行
复制
var CarImages = @Html.Raw(Newtonsoft.Json.JsonConvert.SerializeObject(Model.CarImages));

基本上,尽可能多地将逻辑移动到模型中。除了绑定到模型数据之外,视图不应该做更多的事情(如果有的话),它不应该在内部检查数据的有效性。模型对此负责。

票数 2
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54678119

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档