【问题标题】:DirectoryInfo.Exists cannot find my mapped network drive C#DirectoryInfo.Exists 找不到我的映射网络驱动器 C#
【发布时间】:2015-10-10 04:04:33
【问题描述】:
protected void btnAutomaticUpload_Click(object sender, EventArgs e)
{
    DirectoryInfo dir = new DirectoryInfo(@"\\space-bar\UZ\UZ Dept\Management\Data\directory_exists_here\");
    bool atLeastOneSuccessfulUpload = false;
    bool possibleFormatChange = false;

    lblMessages.Text = string.Empty;
    lblResults.Text = "<span style='font-size:large; font-weight:bold'><u>Results Log</u></span><br><br>";

    //If our destination directory does not exist, exit
    if (!dir.Exists)
    {
        lblResults.Text += "<span style='color:Red'>Expected directory does not exist!</span><br>" + dir.FullName;
        return;
    }

所以我一直试图在具有映射网络驱动器的实时服务器上运行此代码,但它似乎总是无法找到该文件夹​​。虽然当我在 Debug 或 LocalHost 模式下运行它时,它似乎能够毫无问题地找到目录。关于为什么即使使用 UNC 路径编码也无法正常工作的任何想法?如果有的话,和权限有关系吗?

我正在尝试构建一个自动文件上传解析器。

【问题讨论】:

  • 调试时代码在服务器和本地是否以同一用户身份运行?如果他们是不同的用户,则可能是权限问题。

标签: c# asp.net visual-studio


【解决方案1】:

如果您在 IIS 下运行,它几乎肯定无权访问网络资源。检查 IIS 中的应用程序池标识以确定您的应用程序在哪个用户下运行 - 它可能是一个非常受限的系统帐户。这可以通过更改 IIS 管理器中的应用程序池设置来更改。

【讨论】:

  • 这似乎是答案。糟透了,因为我还没有访问 IIS 管理器的权限。
猜你喜欢
  • 1970-01-01
  • 2017-07-19
  • 1970-01-01
  • 2011-04-01
  • 2010-11-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多