C# ASP.NET IIS StreamWriter WinIOError
我试图让我的网站在执行某些操作时执行代码(这与这个问题无关)。按一下按钮就足够了 无法执行的代码如下所示:C# ASP.NET IIS StreamWriter WinIOError,c#,asp.net,C#,Asp.net,我试图让我的网站在执行某些操作时执行代码(这与这个问题无关)。按一下按钮就足够了 无法执行的代码如下所示: foreach (Dictionary<string, string> d in entryList) { foreach (KeyValuePair<string, string> k in d) { csv.Append(SanitizeValue(k.Value)); csv.Append(delimitor);
foreach (Dictionary<string, string> d in entryList)
{
foreach (KeyValuePair<string, string> k in d)
{
csv.Append(SanitizeValue(k.Value));
csv.Append(delimitor);
}
csv.Append('\n');
}
using (System.IO.StreamWriter file = new System.IO.StreamWriter(filePath))
{
file.WriteLine(csv);
file.Flush();
file.Close();
}
return true;
foreach(条目列表中的字典d)
{
foreach(d中的键值对k)
{
csv.Append(SanitizeValue(k.Value));
csv.Append(定界符);
}
csv.Append('\n');
}
使用(System.IO.StreamWriter file=new System.IO.StreamWriter(filePath))
{
文件写入线(csv);
Flush()文件;
file.Close();
}
返回true;
我收到的错误是:
foreach (Dictionary<string, string> d in entryList)
{
foreach (KeyValuePair<string, string> k in d)
{
csv.Append(SanitizeValue(k.Value));
csv.Append(delimitor);
}
csv.Append('\n');
}
using (System.IO.StreamWriter file = new System.IO.StreamWriter(filePath))
{
file.WriteLine(csv);
file.Flush();
file.Close();
}
return true;
在System.IO.\uuu Error.WinIOError(Int32 errorCode,字符串maybeFullPath)
在System.IO.FileStream.Init(字符串路径、文件模式、文件访问
访问、Int32权限、布尔用户权限、文件共享共享、Int32
缓冲区大小,文件选项,安全属性,字符串
msgPath、布尔bFromProxy、布尔useLongPath、布尔checkHost)
在System.IO.FileStream..ctor(字符串路径、文件模式、文件访问
访问、文件共享、Int32 bufferSize、文件选项、字符串
msgPath、布尔bFromProxy、布尔useLongPath、布尔checkHost)
在System.IO.StreamWriter..ctor(字符串路径、布尔追加、编码
编码,Int32 bufferSize,Boolean checkHost)在
System.IO.StreamWriter..ctor(字符串路径、布尔追加、编码
System.IO.StreamWriter..ctor(字符串)处的编码,Int32 bufferSize)
路径)在
InventoryImportExportLibrary.InventoryLocatorCSVWriter.Write(列表`1
entryList)在
c:\InventoryLocator\InventoryImportLibrary\InventoryLocatorCSVWriter.cs:line
65位于InventoryImportExportLibrary.InventoryEntryBuilder.SaveToFile()处
在里面
c:\InventoryLocator\InventoryImportLibrary\InventoryImportExportLibrary.cs:line
50分
InventoryLocatorWebApplication.\u默认值。按钮估计\u单击(对象
发件人,事件参数(e)在
c:\InventoryLocator\InventoryLocatorWebApplication\Default.aspx.cs:line
163
错误在这里:使用(System.IO.StreamWriter file=new System.IO.StreamWriter(filePath))
我展示的代码在由通用控制台程序运行时可以工作。所以我的想法是,这个问题根源于ASP.NET进程,或者与权限有关
为什么这可能不起作用?这是权限问题吗?如何修复此问题?您尚未向我们显示错误消息,默认情况下,只有stack trace.IIS作为网络服务运行。网络服务只有用户权限,这意味着它可能没有从该路径读取/写入文件的权限[System.UnauthorizedAccessException]={“拒绝访问路径“C:\\Users\\me\\Desktop\\file.txt”。}