2011-04-18 17 views
5

Cuando uso DirectoryInfo con una ruta específica (digamos @ "C: \") en mi aplicación ASP.NET MVC, devuelve ok pero cuando trato de usar exactamente la misma ruta en mi biblioteca C# externa, arroja la excepción anterior. Revisé el camino miles de veces y el camino es legal. ¿Alguien puede decirme el motivo?DirectoryInfo lanza "Excepción de argumento: la ruta no es de una forma legal" para la ruta correcta

Editar: Aquí está el código:

var di = new DirectoryInfo("C:\\App\\Files\\"); 
    //  var file = di.GetFiles(Id + ".*").First(); 
    //  if (file != null) return file.FullName; 
    //  return string.Empty; 

El código anterior se utiliza dentro de una propiedad.

Gracias.

+0

vamos a ver el código! –

+3

y la ruta exacta – inspite

+0

Está haciendo algo mal, funciona - Consulte aquí http://ideone.com/MnkVeS – vidstige

Respuesta

1

De la documentación:

path contains invalid characters such as ", <, >, or |. 

http://msdn.microsoft.com/en-us/library/system.io.directoryinfo.directoryinfo.aspx

Vea si su trayectoria real tiene cualquiera de estos. Sé que dijiste que revisaste si la ruta es legal, pero este es el único caso. Tal vez dar el camino exacto aquí ayude.

Editar:

Use Path.GetInvalidPathChars() y Path.GetInvalidFileNameChars() y ver si hay algo que es ilegal ha sido añadido.

Cuestiones relacionadas