Robert D
Robert D

Reputation: 71

DirectoryInfo throws "Argument Exception: The path is not of a legal form" for the correct path

When I use DirectoryInfo with a specific path (say @"C:\") in my ASP.NET MVC application, it returns ok but when I try to use the exactly same path in my external C# library, it throws the above exception. I have checked the path a thousand time and the path is legal. Can somebody tell me the reason?

Edit: Here's the code:

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

The above code is used inside a property.

Thanks.

Upvotes: 7

Views: 19152

Answers (1)

manojlds
manojlds

Reputation: 301127

From documentation:

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

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

See if your actual path has any of these. I know you said you have checked if the path is legal, but this is the only case. Maybe giving the exact path here will help.

Edit:

Use Path.GetInvalidPathChars() and Path.GetInvalidFileNameChars() and see if anything that is illegal has been added.

Upvotes: 3

Related Questions