gpt4 book ai didi

c# - Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 返回 String.Empty

转载 作者:太空狗 更新时间:2023-10-30 00:55:28 32 4
gpt4 key购买 nike

我有一个 asp.net mvc3 应用程序。现在我想将用户数据保存在

C:\Users{AppPoolUserAccount}\AppData\Roaming\MyProgramm...

在第一次调用 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 时,我只得到“”(String.Empty)。在第二次调用 Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 时返回正确的路径...

注意:该例程位于登录上下文中。我想将用户名和 session ID 保存在 xml 文件中以防止两个用户通过一个用户帐户同时登录。

为什么?

最佳答案

Environment.GetFolderPath 为大多数 SpecialFolder 枚举值返回空字符串,因为未加载用于运行应用程序池的用户的用户配置文件。

您需要配置应用程序池以加载用户配置文件,方法是进入 IIS 管理器 > 应用程序池 > YourAppPool > 高级设置 > 加载用户配置文件,并将值设置为“true”,或者打开命令提示符并运行

appcmd set apppool "MyAppPool" -processModel.loadUserProfile:true

(通常您会在 C:\Windows\SysWOW64\inetsrv 中运行它)。

这里有几个包含更多数据的链接:

关于c# - Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) 返回 String.Empty,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9428945/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com