检查文件是否是图像

时间:2015-06-22 07:26:29

标签: c# asp.net asp.net-mvc

我想检查文件是否是图片。然后你会看到一个链接,你可以看到图像。但是只有文件是链接时才会出现链接。我这样试试:

if (!String.IsNullOrEmpty(item.FileName)) {
    var file = item.FileName;
    string[] formats = new string[] { ".jpg", ".png", ".gif", ".jpeg" };
    if (file == null || file.Contains(formats)) {
        viewLink = false;
        @Html.DisplayFor(modelItem => item.FileName)
        <em>(@Resources.Entity.Environment.Removed)</em>
    }
    else {
        @*@Html.DisplayFor(modelItem => modelItem.Id )*@
        <a href="@Url.Action("Details", "FormLibrary", new { id = item.FileName})"><i class="fa fa-fw fa-external-link-square text-info"></i></a>
    }
}

但是我收到了这个错误:

 if (file == null || file.Contains(formats)) {

1 个答案:

答案 0 :(得分:2)

你不能这样做:

string.Contains(string array)

相反,你必须重写这行代码:

if (file == null || formats.Any(f => file.Contains(f)))

这可以缩短为:

if (file == null || formats.Any(file.Contains))