为什么在服务器而不是本地PC中创建文件夹

Si8*_*Si8 1 c# asp.net

我有一个ASP.net网站,在后面的代码我正在页面加载创建一个文件夹,如果它在本地驱动器中不存在:

string strDirectory = @"C:\PDFGenerate\";
try
        {
            if (!Directory.Exists(strDirectory))
            {
                Directory.CreateDirectory(strDirectory);
            }
        }
        catch (Exception ce)
        {
            tc.Text = "Unable to create directory to save generated PDF files";
        }
Run Code Online (Sandbox Code Playgroud)

该网站目前托管在我的本地服务器中.我将网站添加到我的IIS,以便我可以从我们网络中的任何PC本地访问它.

我遇到的问题是每当我从本地PC访问该网站时,该文件夹是在服务器而不是在我的PC中创建的.

这与访问有关吗?我试图在我自己的本地驱动器中创建一个文件夹,它工作正常.

Jon*_*eet 8

我遇到的问题是每当我从本地PC访问该网站时,该文件夹是在服务器而不是在我的PC中创建的.

是.那是因为你的所有代码都在服务器上执行.服务器只是将HTML传送到您的PC,Web浏览器显示HTML.当然,如果包括一些JavaScript,将在PC(浏览器)上运行-但C#中的服务器上运行.(想一想:您如何期望C#代码在没有任何运行.NET的工具的情况下运行?)

这是真的真的很重要,了解您的代码运行.作为Web应用程序创建者,您无法在客户端计算机上创建文件夹.您对本地(即客户端)存储的访问权限非常有限,但您无法执行任意文件系统操作.这将是非常不安全的.