我正在使用cs NetworkConnection : IDisposable
在其他域的共享文件夹中搜索文件,但无法正常工作。
我无法加载资源:服务器在输出控制台上响应状态为500()。
如果我在Windows Credentials Manager中输入用户的凭据并在没有cs NetworkConnection : IDisposable
的情况下运行该应用程序,则可以访问上述文件夹。如果我从Windows凭据管理器中删除凭据并实现cs NetworkConnection : IDisposable
并使用以下代码从我的应用程序中调用它,则无法访问共享文件夹并无法加载资源:服务器响应状态为500()。
List<Files> filelist = new List<Files>();
//Searching Files in //192.168.1.191
string path = @"\\192.168.1.191\Materials Project\";
var credentials = new NetworkCredential("domain\username", "password");
string searchPattern = MCodeID + "*";
using (new IDisposable(path, credentials))
{
DirectoryInfo fi = new DirectoryInfo(path);
if (fi.GetFiles(searchPattern, SearchOption.AllDirectories).Any())
{
foreach (var file in fi.GetFiles(searchPattern, SearchOption.AllDirectories))
{
var changeSlash = file.FullName.Replace('\\', '/');
var filepath = changeSlash.Replace("//192.168.1.191/Materials Project", "");
filelist.Add(new Files
{
FCodeID = filepath,
FDescr = file.Name + " | " + Math.Round((Convert.ToDouble(file.Length) / (1024 * 1024)), 2) + " MB",
});
}
filelist.Insert(0, new Files { FCodeID = "0", FDescr = "--Select File--", FSize = 0 });
return Json(new SelectList(filelist, "FCodeID", "FDescr"));
}
else
{
filelist.Insert(0, new Files { FCodeID = "0", FDescr = "--No File--" });
return Json(new SelectList(filelist, "FCodeID", "FDescr"));
}
}
我在哪里弄乱了?
我将不胜感激。