[英]System.Array' does not contain a definition for 'Count'
在我的 C# 項目中,我收到此錯誤,即計數的定義不包含System.Array
protected void Page_Prerender(object sender, EventArgs e)
{
FileInfo[] fileInfo;
string UpFolder = Server.MapPath("~/data/images/");
DirectoryInfo dir = new DirectoryInfo(UpFolder);
fileInfo = dir.GetFiles();
// here i am getting error
int TotalImages = fileInfo.Count();
for (int count = 0; count < TotalImages; count++)
{
Image image = new Image();
image.ImageUrl = "~/data/images/" + fileInfo[count].ToString();
image.ID = count.ToString();
DataListImage.Controls.Add(image);
}
DataListImage.DataSource = dir.GetFiles();
DataListImage.DataBind();
string UpFolder1 = Server.MapPath("~/data/thumbnails/");
DirectoryInfo dir1 = new DirectoryInfo(UpFolder1);
DataListthumbnails.DataSource = dir1.GetFiles();
DataListthumbnails.DataBind();
}
您不需要Count
,而是可以將Length
與數組一起使用來獲取計數。
您收到錯誤,因為您缺少using System.Linq;
要獲得TotalImages
您可以使用
int TotalImages = fileInfo.Length;
雖然Count()
不是“需要”的,因為類型是一個數組,但錯誤是沒有“使用”正確的命名空間的結果。
Enumerable.Count()
是System.Linq
命名空間中的 LINQ擴展方法。 因此,它可以通過以下方式提供:
using System.Linq;
由於數組實現IEnumerable<T>
,因此它們可以在可用時使用任何此類方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.