我对 Linq 和 Lambda 表达式不熟悉,我想更改这段代码:
if (string.IsNullOrEmpty(model.PictureUrl1) && string.IsNullOrEmpty(model.Picture2Url) &&
string.IsNullOrEmpty(model.Picture3Url) && string.IsNullOrEmpty(model.Picture4Url) &&
string.IsNullOrEmpty(model.Picture5Url) && string.IsNullOrEmpty(model.Picture6Url))
return Content("");
Run Code Online (Sandbox Code Playgroud)
现在我重构了该模型,使其具有具有这些属性的对象以及所述对象的列表:
public class PublicInfoModelItem
{
public string PictureUrl { get; set; }
public string Text { get; set; }
public string Link { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
以及清单:
public List<PublicInfoModelItem> ListOfImages = new List<PublicInfoModelItem>();
Run Code Online (Sandbox Code Playgroud)
模型:
public class PublicInfoModel
{
public List<PublicInfoModelItem> ListOfImages = new List<PublicInfoModelItem>();
public string Container { get; set; }
public int TemplateId { get; set; }
public PublicInfoModelItem InfoModelItem { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我正在考虑 Lambda 表达式,例如:
var result = model.ListOfImages.Where(x => string.IsNullOrEmpty(x.PictureUrl)).ToList();
if (result == null)
{
return Content("");
}
Run Code Online (Sandbox Code Playgroud)
不知道上面的表述是否正确或者是否可以改进。
我想你想使用 Any:
if (!model.ListOfImages.Any(x => string.IsNullOrEmpty(x.PictureUrl)))
{
return Content("");
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
37798 次 |
| 最近记录: |