12

由于我们在 ASP.net网站中实现了全球化,我们遇到了一些智能感知问题。

将资源添加到 asp.net 控件时,我们会收到错误消息。即使错误显示在 Visual Studio 中,应用程序仍然有效!

例如下面的按钮

 <asp:Button runat="server" ID="BtnSave" Text="<%$ Resources:ResourceName, Save %>" OnClick="BtnSave_Click" />

在后面的代码中无法识别:

智能感知问题

只有在打开后面的代码时才会显示错误。但是在浏览器中它可以工作!

没有资源引用的相同按钮效果很好:

 <asp:Button runat="server" ID="BtnSave" Text="Save" OnClick="BtnSave_Click" />

这是一个自定义 SQL 资源提供程序工厂,添加到 web.config:

 <globalization resourceProviderFactoryType="MyNamespace.SqlResourceProviderFactory" />

我已经尝试删除缓存并重新启动计算机。

您对如何找到问题有任何提示吗?

提前致谢。

4

8 回答 8

6

当我创建一个新的 VS2010 解决方案并拖入现有网站时,我遇到了这个问题。要解决它,请右键单击项目并“转换为 Web 应用程序”,这将创建设计器文件并修复智能感知问题。

于 2012-09-18T09:30:37.917 回答
3

我自己有过几次,但与全球化无关。

我总是通过重新启动 VS(看起来你已经尝试过)或检查前端代码和后端代码中的类名来解决它,并且代码是相同的。

这听起来很愚蠢,但如果你复制一个页面,那么类名不会更新,所以绑定会有点歪曲(这是一个技术术语)。

可能无济于事,但需要检查。

于 2012-07-04T15:29:24.427 回答
1

尝试清除临时编译的页面缓存,包括 32 位和 64 位各自的目录(64 位如下所示):

%System Drive%:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files

有时可以做到这一点

于 2012-07-16T20:24:50.707 回答
1

您是否可以尝试使用隐式资源键引用来查看这是否有帮助,而不是您正在使用的显式引用?

http://msdn.microsoft.com/en-us/library/ms227427.aspx

此外,您是否尝试过删除“obj”文件夹并重建 - 有时这对我有用?

于 2012-07-18T10:15:08.397 回答
1

当 .aspx 页面的内容被批量复制到新页面时,我们遇到了这个问题,导致 2 个 .aspx 文件指向后面的相同代码

CodeFile="xxxxxxxx.aspx.cs"

它以同样的方式表现出来,抛出错误,停止构建但将其注释掉,构建然后将其评论回来,站点和功能运行良好。

于 2012-07-18T11:31:04.023 回答
1

通常这可以通过清理和重建来解决。

如果这不起作用,请尝试在标记或设计视图中添加一些内容以强制重新生成设计器文件。

当您重命名页面文件时,也会发生这种情况。仔细检查 .aspx 文件中的“CodeBehind=”和“Inherits=”字段是否正确:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebPagName.aspx.cs" Inherits="NameSpace.ClassName" %>

例如,如果您的网页名称是 WebPage1,而您在 WebPage1.aspx.cs 文件中的类名称是 WebPage1,而您的项目名为 Project1,那么它可能如下所示:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebPage1.aspx.cs" Inherits="Project1.WebPage1" %>
于 2014-01-22T15:18:55.763 回答
0

你能不能做“干净的解决方案”并删除c盘中asp.net的临时文件夹,如果这有帮助,请告诉我

于 2012-07-18T16:45:03.097 回答
0

我们的资源提供程序存在问题:它正在运行时编译和工作,但在没有 HTTP 上下文 ( HttpContext.Current) 的情况下运行时崩溃。

我会建议遇到同样问题的其他人检查他们 web.config 文件中使用的类是否存在这种不一致。

于 2012-09-18T13:39:59.483 回答