我正在将一个UNC路径传递给File.GetAttributes()。这在运行我的本地时工作正常,但当我将网站移动到测试服务器时,我收到“找不到网络路径”错误。我能够从测试服务器导航到路径,所以我不知道为什么我会收到此错误。代码很简单。这是错误的地方:
try
{
if (FileAttributes.Directory != (FileAttributes.Directory & File.GetAttributes(directory)))
directory = GetPath(directory);
}
catch...
答案 0 :(得分:0)
能够从服务器导航到共享并不意味着 - 记住您的应用程序正在另一个帐户下运行,通常是应用程序池设置为的。该帐户通常无权访问本地计算机中的资源以外的任何内容,因为它不是域帐户。
检查运行应用程序池的帐户。您可能必须将其更改为AD林中的域帐户才能访问其他服务器上的内容。
答案 1 :(得分:0)
很可能是“NTLM one hop”问题 - 远程用户的凭据无法传递给thrird服务器。
机器1:浏览器 - (凭据) - >机器2:ASP.Net站点 - (无凭证) - >机器3。
解决方案是在已知(即处理)帐户下访问“机器3”或使用Kerberos。