Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#和#x2B;OpenRead(路径到文件)_C#_File_Iis 7 - Fatal编程技术网

C#和#x2B;OpenRead(路径到文件)

C#和#x2B;OpenRead(路径到文件),c#,file,iis-7,C#,File,Iis 7,我正在开发一个基于HTML5的网络应用程序,该应用程序托管在IIS7中。此webapp向IIS7中承载的Web服务发送请求 服务初始化将查找特定文件,例如:“appfile.txt”作为 FileStream stream=File.OpenRead(“appfile.txt”);//打开文件进行读取。 当作为控制台应用程序运行时,此调用在project\bin或output目录中查找,并且能够找到指定的文件 但IIS7中承载的相同内容在“C:\windows\system32\inetsr

我正在开发一个基于HTML5的网络应用程序,该应用程序托管在IIS7中。此webapp向IIS7中承载的Web服务发送请求

服务初始化将查找特定文件,例如:“appfile.txt”作为


FileStream stream=File.OpenRead(“appfile.txt”);//打开文件进行读取。

当作为控制台应用程序运行时,此调用在project\bin或output目录中查找,并且能够找到指定的文件

但IIS7中承载的相同内容在“C:\windows\system32\inetsrv\appfile.txt”中查找

是否有在web.config中使用的任何配置项从IIS7应用程序的Bin目录而不是其他任何位置查找文件


非常感谢您的帮助。

您当然可以在web.config文件中创建自己的部分,以获取所需的文件路径。它不需要预先定义。然后只需使用您想要的任何XML读取器


或者,您可以在Visual Studio中非常轻松地创建.resx文件,并将路径作为变量填充到其中

如果应用程序文件位于web应用程序文件夹中,请尝试使用Server.MapPath获取文件相对于web应用程序根目录的位置:

File.OpenRead(Server.MapPath("~/appfile.txt"))

这应该行得通。您可能需要设置appfile.txt属性,以便将其复制到输出文件夹

感谢您的宝贵意见,我可以使用以下代码片段自己解决此问题


字符串路径=System.Web.Hosting.HostingEnvironment.ApplicationPhysicalPath

字符串[]labs=File.ReadAllLines(路径+“/appfile.txt”);


这段代码允许我读取文件内容,没有任何问题

使用Server.MapPatch(字符串)将您的ISS应用程序映射到它的文件夹什么类型的应用程序?你不能在IIS上托管控制台应用程序。Henk Holterman是的,我同意控制台应用程序不能像web应用程序那样托管。我也不想这样做。谢谢你的评论。