编辑:我让这更令人困惑。忘记这是一个Silverlight客户端。我有一个托管在IIS中的WCF服务,需要访问本地文件系统上的文件。这项服务的消费者将是Silverlight,但我认为这不重要,应该将其排除在外。
我有一个Silverlight应用程序,我在其中托管服务。在这项服务中,我想读取C盘根目录中的文本文件(仅用于测试)。我收到一个异常抛出的文件无法找到。我认为这是一个权限问题,但我无法弄明白。
我将我的应用池标识设置为NetworkService。我将.NET Trust Level设置为Full(Internal)。我甚至在我试图阅读的文本文件上给予NetworkService用户读取权限。
该服务需要具有对文件系统的访问权限。这样做的正确方法是什么?
谢谢,
-Scott
答案 0 :(得分:0)
首先,在现实生活中不会出现等式中的事物。在实际应用程序中,您不会从C:\中读取。所以值得考虑一下你将从哪里读书。
我建议您的文件位于网站的App_Data
文件夹中。所以尝试在那里放一个文件,然后从服务中访问它。您可以使用以下命令解析App_Data物理文件:
string filePath = Path.Combine(HttpRuntime.AppDomainAppPath, "App_Path\SomeFile.txt");