Asp.net 无法使用模拟在global.asax.net 3.5 Web服务上启动监视更改

Asp.net 无法使用模拟在global.asax.net 3.5 Web服务上启动监视更改,asp.net,web-services,impersonation,Asp.net,Web Services,Impersonation,我正在尝试在asp.net 3.5 Web服务中使用模拟。但是,每当我尝试在启用模拟的情况下(在web.config中)运行服务时,我在Windows事件日志中收到以下错误: 异常消息:无法开始监视对“C:\1work\temp\NotificationWatcherWebServiceClean2010\NotificationWatcherWebService\NotificationWatcherWebService\global.asax”的更改 最初我甚至没有global.asax,所

我正在尝试在asp.net 3.5 Web服务中使用模拟。但是,每当我尝试在启用模拟的情况下(在web.config中)运行服务时,我在Windows事件日志中收到以下错误:

异常消息:无法开始监视对“C:\1work\temp\NotificationWatcherWebServiceClean2010\NotificationWatcherWebService\NotificationWatcherWebService\global.asax”的更改

最初我甚至没有global.asax,所以我尝试添加1,并为试图模拟的用户添加显式权限

我正在使用以下环境。 Visual Studio 2010
Windows 7 64位
.Net Framework 3.5


有什么想法吗?

每次我买一个新的盒子,或者重新整理我的盒子时,我都会看到这个问题。我要做的是授予正在模拟的帐户(假设它是单个帐户,否则您可能需要授予一组用户)对关键文件夹的访问权限


特别是
C:\windows\Microsoft.NET\Framework\v2.0.50727\ASP.NET临时文件
,但您也可以尝试
C:\windows\temp
,以及位于
C:\Users\userid\AppData\Local\temp

的您自己的user temp文件夹。此错误似乎是由于模拟用户帐户不是IIS_IUSRS组。在“控制面板”/“管理工具”/“计算机管理”/“本地用户和组”中向此组添加成员身份应有助于解决此问题。

出于开发目的,以管理员身份运行Visual Studio可能会有所帮助。

请注意,如果您的文件夹与其他用户共享,并且继承了父权限,出现了这个问题

我们只需删除该用户(从文件夹属性对话框的安全选项卡)及其父权限映射

而且

  • 确保Visual Studio正在管理模式下运行
  • 确保相关文件夹不是只读的

  • 确保或和(可选)
    IIS\u IUSRS
    有权访问相关文件夹

  • 打扫房间

  • 这太糟糕了。我不敢相信在VS 2017(15.9.15)中会遇到这种情况

    我正在向生产服务器发布文件路径/UNC路径样式

    对我来说,修复方法是简单地从web.Release.config转换文件中删除模拟

    在system.web元素中消除此问题:

    
    
    这允许发布正常进行,然后,我显然必须将模拟放回目标安装服务器上


    有趣的是,web配置转换在包含模拟的情况下可以正常工作。。如果我右键单击
    Web.config
    并选择“发布Web.config”。只有当我发布整个网站时,模拟功能才会中断

    尝试添加“Everyone”以证明这是一个文件权限问题。我非常怀疑您模拟的用户是否是ASP.Net正在运行的用户。调整权限对我来说不起作用,但如果我以管理员用户身份运行Visual Studio,则可以避免此错误。在我的情况下(错误发生在web项目生成期间),我需要将模拟帐户添加到项目根目录。我给了该帐户完全控制权,但可能只需要给它读或修改的权限-我当时很忙。我真的认为这是微软如何从Visual Studio设计发布流程的一个缺陷。。很多年后,我仍然会犯这样的错误。请参阅我的答案以了解不同的解决方法
    <identity impersonate="true"  userName="CONSOTO\my_serviceacct" password="pwd123456" xdt:Transform="Insert"/>