C# 超链接控件在一个目录中打开一个文件,而不在另一个目录中打开同一个文件

C# 超链接控件在一个目录中打开一个文件,而不在另一个目录中打开同一个文件,c#,asp.net,C#,Asp.net,亲爱的ASP.NET程序员 我有一个GridView控件,其中一个单元格中包含一个超链接控件。此超链接应打开NavigateUrl属性指向的文件。但它不能正常工作。在开发模式下(在visual studio中),如果我将hyperlink的NavigateUrl属性设置为公司共享服务器上的文件(file://fs/PANTAN/Project/ENG/FIN/Abrisham Oil/ABO289-1976J/PROPOSAL/ABO289-1976Q-REV.0.pdf)它工作正常。但如果我将

亲爱的ASP.NET程序员

我有一个GridView控件,其中一个单元格中包含一个超链接控件。此超链接应打开NavigateUrl属性指向的文件。但它不能正常工作。在开发模式下(在visual studio中),如果我将hyperlink的NavigateUrl属性设置为公司共享服务器上的文件(file://fs/PANTAN/Project/ENG/FIN/Abrisham Oil/ABO289-1976J/PROPOSAL/ABO289-1976Q-REV.0.pdf)它工作正常。但如果我将NavigateUrl设置为本地驱动器中的文件(file:///D:/Mr asas/Distributor Manual.pdf)它不会打开该文件。但这并不是全部。还有更令人惊讶的事情。当我将网站部署到我们的服务器以便其他人都能看到时,超级链接控件根本不起作用。这意味着它不再打开\\fs服务器上的文件。我在代码中以编程方式将文件完全限定路径设置为NavigateUrl属性,我知道文件路径是正确的。但我不知道问题的根源在哪里。请帮我解决这个问题。我真的很困惑

下面是我设置NavigateUrl属性的代码。我在GridView的数据绑定事件中执行此操作

    protected void GridView1_DataBound(object sender, EventArgs e)
    {
        foreach (GridViewRow row in GridView1.Rows)
        {
            string vendorDocumentNo = ((Label)row.FindControl("vendorDocumentNoLabel")).Text;
            int rev = ConnectToIPMDatabase.GetCorrespondingRev(vendorDocumentNo, Session["selectedTransmittalNo"].ToString());
            ((Label)row.FindControl("revLabel")).Text = rev.ToString();

            int pageNo = ConnectToIPMDatabase.GetDocumentPageNo(vendorDocumentNo, rev);
            if (row.FindControl("pageNoLabel") != null)
            {
                ((Label)row.FindControl("pageNoLabel")).Text = pageNo.ToString();

                string transmittalDocumentLink = ConnectToIPMDatabase.GetDocumentLink(vendorDocumentNo, rev);
                ((HyperLink)row.FindControl("transmittalDocumentLink")).NavigateUrl = transmittalDocumentLink;
            }
            else
            {
                ((TextBox)row.FindControl("pageNoTextBox")).Text = pageNo.ToString();
            }
        }
    } 

请分享您如何以编程方式设置NavigateUrl?是否检查了所有权限?亲爱的Richa,添加了NavigateUrl属性的代码段。权限也可能是问题所在。但是超链接控件在客户端打开文件,在客户端(我指的是我的机器),我可以访问\\fs服务器及其所有子目录。所以它应该打开文件。