vs2005发布网站时遇到的问题! ( 无法将类型“ASP.login_ascx”转换为“System.Web.UI.WebControls.Login )
调试都是正常,生成网站,发布网站都能成功,就是发布后浏览不可以,报下面的错误!如果能像2003一样做完了,把ASPX和Bin目录拷过去就可以了。
我现在目前已知有两种方法可以运行:
1,是把全部的.cs and .aspx一起拷过去,运行没问题的,我公司里都这么干的
2,是发布网站时,把 允许更新此预编译站点前面的勾去掉 也是可以的,但这样的话Bin目录里有很多的xx.aspx.cdcab7d2.compiled这样的文件,我想像2003一样,只有几个类库的Dll
注:我的VS2005也装了那个发布网站的插件,但问题依旧
我现在的用户控件是在页面注册的,后置文件里没有写任何东西
<%@ Register TagPrefix= "myuc " TagName= "login " Src= "~/Login.ascx " %>
错误提示如下:
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。
编译器错误信息: CS0030: 无法将类型“ASP.login_ascx”转换为“System.Web.UI.WebControls.Login”
源错误:
行 111:
行 112: public login_ascx() {
行 113: ((Login)(this)).AppRelativeVirtualPath = "~/Login.ascx ";
行 114: if ((global::ASP.login_ascx.@__initialized == false)) {
行 115: global::ASP.login_ascx.@__stringResource = this.ReadStringResource();
[解决办法]
mark
[解决办法]
乱码我也碰到过,关注!
[解决办法]
自己的类改个名字。。。与net2.0提供的Login类冲突了
也可以加namespace来区别。
[解决办法]
up
[解决办法]
这是ASP.NET 2.0的一个Bug,尽量不要把页面或用户控件与现有的控件、Web的类同名。
[解决办法]
[解决办法]
学习
[解决办法]
Study
[解决办法]
学习
[解决办法]
之前已经发现了 ,不冲突就可以了
[解决办法]
Ivony(授人以鱼不如授人以渔,上海谋生) ( ) 信誉:100 2007-08-13 11:40:57 得分: 0
这是ASP.NET 2.0的一个Bug,尽量不要把页面或用户控件与现有的控件、Web的类同名。
把cs的类名改一下:比如:_Login,当然了,这样.aspx里面的最上面的继承也改成一致.
在2003下,这些是自动处理了,最常用的比如default.aspx,类名会是:_default.aspx.
可以按照:Ivony(授人以鱼不如授人以渔,上海谋生)所说的,是ASP.NET 2.0的一个Bug吧.
[解决办法]
名称重复啦
换个名称吧
[解决办法]
UP
[解决办法]
study
[解决办法]
是PageParser在分析处理页面类的时候,并没有加上global::,即应该生成的代码是global::Login,而PageParser生成的是Login,故而被解释成System.Web.UI.WebControls.Login,从而出错。
------解决方案--------------------
将你的页面login.aspx对应后台的.cs支撑文件中的class换换名字就OK了,
Ivony(授人以鱼不如授人以渔,上海谋生) ( )
是PageParser在分析处理页面类的时候,并没有加上global::,即应该生成的代码是global::Login,而PageParser生成的是Login,故而被解释成System.Web.UI.WebControls.Login,从而出错。
----------------说的不错
[解决办法]
VS的bug
你把VS关掉 重新打开一次就OK了
[解决办法]
Login 应为 login!!!!!要不然会和系统的冲突!
[解决办法]
顶!
[解决办法]
将Login.aspx文件换个名字。