作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
考虑我在 View 中的表格内显示客户邮寄地址时使用的以下代码:
<%: Customer.MailingAddress == null ? "" : Customer.MailingAddress.City %>
我发现自己使用了相当多的这些三元条件语句,我想知道是否有一种方法可以返回到在条件中评估的对象,以便我可以在表达式中使用它。可能是这样的:
<%: Customer.MailingAddress == null ? "" : {0}.City %>
这样的东西存在吗?我知道我可以创建一个变量来保存该值,但最好将所有内容都保存在 View 页面中的一个紧凑的小语句中。
谢谢!
最佳答案
不,没有一种方法可以在不创建变量或复制自己的情况下精确地完成您的要求,尽管您可以这样做:
(Customer.MailingAddress ?? new MailingAddress()).City ?? string.Empty
这假定一个新的 MailingAddress 的城市属性/字段默认为 null。
如果创建新的 MailingAddress 将 city 字段/属性初始化为空字符串,则可以删除最后一个空合并。
但这实际上并没有更短,而是更 hackish(在我看来),而且几乎可以肯定性能更差。
关于c# - ASP.NET MVC/C# : Can I avoid repeating myself in a one-line C# conditional statement?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4046749/
我是一名优秀的程序员,十分优秀!