【问题标题】:uri formats are not supported for Ip address in C#C# 中的 IP 地址不支持 uri 格式
【发布时间】:2017-11-23 23:46:31
【问题描述】:

在我的 Web.Config 文件中,我在文件路径中添加了我的 IP 地址。当我尝试访问该文件夹的所有文件时,它会给出错误 uri format not supported。但如果我给出本地文件路径,那么它工作正常。

string pathdata = Utility.GetConfigValue("DevSubmittedStateTaxForms");
string uploadPath = Utility.GetConfigValue("DevUploadFiles");

DirectoryInfo d = new DirectoryInfo(pathdata);
                FileInfo[] Files = d.GetFiles("*.pdf"); 

                var status = new List<Object>();
                int i = 1;
                foreach (FileInfo filename in Files)
                {
                    status.Add(new {ID = i, Name = filename.Name, URL = pathdata + filename.Name + ".pdf" });
                    i++;
                }

【问题讨论】:

  • DevSubmittedStateTaxForms 中的值究竟是什么?只是一个 IP 地址?
  • 这是值 192.168.249.84/CBR/SubmittedStateTaxForms/"> 在 web.Config 文件中
  • \ 是 Windows 上的路径分隔符,而不是 / 。你试过\\192.168.249.84\CBR\SubmittedStateTaxForms 吗?
  • 是的。我也尝试过这个,但给出了同样的错误。
  • 请向我们展示您的配置文件。该技术应该可以正常工作-我只是在本地对其进行了测试。如果你开始 -> 运行 \\192.168.249.84\CBR\SubmittedStateTaxForms anoopcnair.com/run-option-windows-10 会发生什么?

标签: c# asp.net-mvc networking ip-address filepath


【解决方案1】:
using System;
using System.IO;

namespace Test
{
    public class Program
    {
        static void Main(string[] args)
        {
            string pathdata = @"\\192.168.1.27\Temp\";

            var d = new DirectoryInfo(pathdata);
            var files = d.GetFiles("*.pdf");

            foreach (var filename in files)
            {
                Console.WriteLine(pathdata + filename.Name + ".pdf");
            }

            Console.ReadLine();
        }
    }
}

上面的代码确实有效(在我的机器上 - 这是我当前的 IP 地址和我在我的机器上共享的文件夹)。您的代码可能由于以下两个原因之一无法运行:

  1. 您的路径无效(例如,使用 / 而不是 \
  2. CBR 文件夹不是shared

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多