C# compiling error: 'System.Array' does not contain a definition for 'Select' and no extension method 'Select' accepting a first argument of type 'Sys

  • Thread starter Thread starter QQFA
  • Start date Start date
Q

QQFA

Guest
Hello experts,


I'm totally new to C#. I'm trying to modify existing code to automatically rename a file if exists. I found a solution online as follows:



string[] allFiles = Directory.GetFiles(folderPath).Select(filename => Path.GetFileNameWithoutExtension(filename)).ToArray();
string tempFileName = fileName;
int count = 1;
while (allFiles.Contains(tempFileName ))
{
tempFileName = String.Format("{0} ({1})", fileName, count++);
}

output = Path.Combine(folderPath, tempFileName );
string fullPath=output + ".xml";



However, it gives the following compilation errors for the Select and Contain methods respectively.:


'System.Array' does not contain a definition for 'Select' and no extension method 'Select' accepting a first argument of type 'System.Array' could be found (are you missing a using directive or an assembly reference?)



'System.Array' does not contain a definition for 'Contains' and no extension method 'Contains' accepting a first argument of type 'System.Array' could be found (are you missing a using directive or an assembly reference?)



I googled on these errors, and people suggested to add using System.Linq; I did, but the errors persist.


Any help and information is greatly appreciated.


P. S. Here are the using clauses I have:


using System;
using System.Data;
using System.Windows.Forms;
using System.IO;
using System.Collections.Generic;
using System.Text;
using System.Linq;

Continue reading...
 
Back
Top