'InitializeCulture'不是其成员

时间:2010-12-16 11:40:39

标签: asp.net

我正在尝试在服务器上设置一些.NET托管作为对某人的帮助,但我对.NET不太熟悉,当网站上传时,发生了一个错误,当前没有发生错误托管。该网站被编译,因此它主要只是DLL文件和aspx文件,错误信息如下。任何想法需要做些什么来实现这个?

Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.

Compiler Error Message: BC30456: 'InitializeCulture' is not a member of 'ASP.index_aspx'.

Source Error:

Line 1:  <%@ page language="VB" masterpagefile="~/mst_mathsBuddy.master" autoeventwireup="false" inherits="index, App_Web_nl--pcdh" %>
Line 2:  
Line 3:  <%@ Register Src="Controls/Competition.ascx" TagName="Competition" TagPrefix="uc3" %>

编辑:

该应用程序在IIS6和ASP.NET版本2.0.5727上运行,与currnet托管相同。

12 个答案:

答案 0 :(得分:4)

Page.InitializeCulture()仅在ASP.NET 2.0及更高版本中受支持。

您的托管服务提供商仍然使用.NET 1.1运行时来为其网站提供服务,或者您没有为IIS中的Web应用程序配置正确的运行时版本。

编辑:显然有人there遇到了同样的问题,并通过在其网站的发布选项中停用Allow this precompiled site to be updatable功能来解决此问题。

答案 1 :(得分:3)

通过在发布转换期间允许预编译的站点为可更新功能,整个为每个页面创建一个dll,并且我们不能在发布后更改任何HTML代码,这不是一个好习惯。由于页面指令中的某些问题而发生此错误,因此如果我们确保所有页面都是从正确的类继承,那么您可以摆脱这些问题。

答案 2 :(得分:3)

如果您只在一个页面上遇到此错误,请检查您的.ASPX文件继承的类是否正确。

就我而言,我只在一个页面上遇到此错误。当我最初创建该页面时,我从现有页面复制/粘贴了ASPX和ASPX.vb文件。但是我忘了更新代码隐藏文件中的类名(因此也在Page指令的Inherits属性中的aspx文件中)。

这一切在开发中都运行良好,但是当我编译并将网站推送到测试服务器时,我开始仅在该页面上收到此错误:

System.Web.HttpCompileException错误BC30456:''InitializeCulture''不是.....的成员。

在这两个地方修复类名解决了我的问题。

答案 3 :(得分:2)

我有一个完美的工作网站,这开始发生。我做了'清洁'并重建。之后问题消失了。

答案 4 :(得分:2)

我如何解决这个问题:我删除了服务器上的所有内容然后重新部署。 (而不是仅仅覆盖/合并它)。 显然,我的新代码与一些未被覆盖的旧文件存在冲突。

答案 5 :(得分:1)

为了跟随此主题并且不熟悉Visual Studio的其他人的利益...

allow the precompiled site to be up updatable功能已启用: Website -> Start Options ... -> MSBuild Options

这没有解决我的问题;我在这里发帖是因为我花了很长时间才找到它。

答案 6 :(得分:0)

我通过将.vb类名更改为与表单名相同来解决了此问题。还更改了.aspx页面。

答案 7 :(得分:0)

难以理解地将aspx的名称设置为vb代码文件我已经解决了这个问题,但它看起来有点异乎寻常的粘性。

答案 8 :(得分:0)

部署预编译站点时出现此错误。

发出错误的页面与解决方案中的另一个页面具有相同的类名。

我重命名了违规页面的类,重新编译,部署并且错误消失了。

答案 9 :(得分:0)

我通过在发布时取消选中“允许预编译站点可更新” int“预编译选项”中的异常来解决了该问题

答案 10 :(得分:0)

将项目文件从“ WebSite项目”移到“ WebApplication项目”时,我看到了此错误。

解决方案是:

1) Open your .ASPX file

2) Hit F7 to edit its source-content (.VB or .CS etc)

3) If you see "Partial class ...MyClass..." then replace with "Public class ...MyClass..." 

4) If you see "Private Sub Form_Load() Handles MyBase.Load" then replace with "Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load"

5) Re-compile / build your web

6) Run, it should work fine. 

答案 11 :(得分:0)

从源代码管理中删除bin / dll。

对我来说,这是由构建所创建的DLL文件中的源代码存储库冲突引起的。

  • 还原DLL(由内部版本生成)可能会暂时解决此问题。
  • 从源代码管理中删除DLL(由内部版本生成)可能会永久解决此问题。

理想情况下,生成的二进制文件不会被检入源代码管理。