adv*_*api 5 asp.net-mvc iis-7.5
我正在开发使用KendoUI的ASP.NET MVC 5应用程序。如果我在IIS Express下运行项目,则一切正常...如果使用IIS Local,则在尝试加载视图时出现以下异常
System.Web.dll中发生类型为'System.Web.HttpException'的第一次机会异常
Additional information: Invalid file name for file monitoring: 'C:\svn\Projects\xxx\trunk\xxx\Views\Shared\EditorTemplates'. Common reasons for failure include:
- The filename is not a valid Win32 file name.
- The filename is not an absolute path.
- The filename contains wildcard characters.
- The file specified is a directory.
- Access denied.
Run Code Online (Sandbox Code Playgroud)
我刚刚在Google上搜索过,有人建议在Debug-> Exception抛出异常复选框下禁用它,但是如果这样做,我将无法显示视图,因为输出只是JavaScript ...
有人找到解决此问题的方法了吗?谢谢
您可以尝试一些事情:
检查以确保您的'C:\svn\Projects\xxx\trunk\xxx\Views\Shared\EditorTemplates'目录可供应用程序使用。
首先,确定 IIS 应用程序池分配给应用程序的用户帐户。
Sites。Basic Settings...右侧窗格中的链接。Cancel。Application Pools左侧窗格中的节点。现在,身份可以是内置帐户(例如 NetworkService、LocalSystem、LocalService 或 ApplicationPoolIdentity),也可以是本地或域用户(如果您使用的是 Active Directory)。
如果是本地或域用户,只需'C:\svn\Projects\xxx\trunk\xxx\Views\Shared\EditorTemplates'在Windows资源管理器中打开该目录,右键单击它,然后选择属性。单击“安全”选项卡,并确保该用户位于列表中。如果没有,请单击Edit...,然后单击Add...,将用户添加到列表中。确保它有足够的权限来读取该目录。
如果使用内置用户,您可以将其切换为本地用户,或者查看此答案以获取向内置帐户添加权限的命令。
特别要检查的一件事是所有视图(或您可能碰巧调用它的其他任何地方)templateName的参数。该参数应与此处的格式之一相对应。@Html.Editor()@Html.EditorFor()
最常见的用法是仅指定模板的名称。例如,如果您指定MyTemplate此字段,它将在多个目录中搜索该文件(请参阅上面的文档),以 结尾~/Views/Shared/EditorTemplates/MyTemplate.<extension>,其中扩展名将为.cshtml, .vbhtml, .aspx, 或.ascx。这是错误消息中的目录,因此您应该彻底检查这些引用。
即使您没有显式指定参数,MVC 也会使用文件名与视图模型名称匹配的约定。
这是一个不太可能的情况,因为您的应用程序在 IIS Express 下运行,所以情况不应该如此。但是您可以尝试搜索以查看应用程序中是否有任何代码指定目录中的文件'C:\svn\Projects\xxx\trunk\xxx\Views\Shared\EditorTemplates'。
如果是这样,请确保文件名
我在这里找到了潜在的答案。
您可以尝试清除与当前应用程序相关的 ASP.NET 临时文件。请注意,根据您的框架版本和位数,它们可能潜伏在几个不同的地方。
<Drive>:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files<Drive>:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files<Drive>:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files<Drive>:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files如果您在 Visual Studio 中打开该项目,它不会让您删除相关文件。最终,您应该在删除文件之前关闭 Visual Studio,但我发现在第一次尝试时将其保持打开状态是确定哪个文件夹包含相关应用程序的好方法,因为您将收到一条消息,表明文件已被锁定。如果您遇到其他问题,了解该位置可能会很有用。
| 归档时间: |
|
| 查看次数: |
2373 次 |
| 最近记录: |