none
这个错误到底是什么原因呢? RRS feed

  • 问题

  •  

    用了母片页,但有时候正常,有时候就会给我出错误提示,提示我是有看没懂啦,已经是相同的类型了,为什么还要强制转换呢?而且还说是转换不成功!以下是所有错误信息,大侠们帮我看一下是怎么回事:

    -----------------------------------------------------------------

     

    无法将类型为“ASP.masterpage_register2_master”的对象强制转换为类型“ASP.masterpage_register2_master”。

    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

    异常详细信息: System.InvalidCastException: 无法将类型为“ASP.masterpage_register2_master”的对象强制转换为类型“ASP.masterpage_register2_master”。

    源错误:

    行 4:  
    行 5:      Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
    行 6:          Master.topImgTxtContent = "txt_login.gif"
    行 7:      End Sub
    行 8:  

    源文件: E:\vss\uc2\main\Register.aspx.vb    行: 6

    堆栈跟踪:

    [InvalidCastException: 无法将类型为“ASP.masterpage_register2_master”的对象强制转换为类型“ASP.masterpage_register2_master”。]
       main_Register.get_Master() +56
       main_Register.Page_Load(Object sender, EventArgs e) in E:\vss\uc2\main\Register.aspx.vb:6
       System.Web.UI.Control.OnLoad(EventArgs e) +80
       System.Web.UI.Control.LoadRecursive() +49
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3745
    

    2008年4月18日 6:55

答案

全部回复

  • 是不是修改后才有问题,试试

    Code Snippet

    删除C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary   ASP.NET   Files
    目录下
    当前站点名称的文件夹

     

     

    2008年4月18日 7:44
    版主
  •  feiyun0112 写:

    是不是修改后才有问题,试试

    Code Snippet

    删除C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary   ASP.NET   Files
    目录下
    当前站点名称的文件夹

     

     

     

     

    不是,我好像没动那个页面以及与之相关的页面。

     

    这是一个重登录的页面。刚打开始没有问题,偶尔,重定向回来就有问题了

    2008年4月18日 7:49
  •  

    偶尔,重定向回来就有问题了?重定向回来也只是偶尔才出错?试试改成客户端重定向看看。

    建议将你的重定向部分代码贴来看看

    2008年4月18日 7:58
    版主
  • 好的

    重定向语句:

     

    Code Snippet

            puname = Session("puname")
            If puname = "" Then
                ebende.printWarn("页面过期,请您重新登录", 1, "../main/Register.aspx?t=p")

            End If

     

     

     

    printWarn子过程:

     

    Code Snippet

        Public Shared Sub printWarn(ByVal str As String, ByVal refreshMode As Integer, ByVal goUrl As String)
            Current.Response.Write("<SCRIPT language=JavaScript>")
            Current.Response.Write("alert('" & str & "');")
            Select Case refreshMode
                Case 0  '刷新本页
                    Current.Response.Write("window.location.reload()")
                Case Else
                    Current.Response.Write("this.location.href='" & goUrl & "';")
            End Select

            Current.Response.Write("</SCRIPT>")
        End Sub

     

     

     

    就是偶尔,也不是老出错,很奇怪

    2008年4月18日 8:04
  • 试一下删除C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files 下的文件试试~

    2008年4月18日 8:12
    版主
  •  Snowdreams 写:

    试一下删除C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files 下的文件试试~

     

     

    我想应该有用。但我更想知道我是不是哪里做的不妥当,或是哪里做错了?

    2008年4月18日 8:14
  •  

    微软已经承认是一个Bug

    http://support.microsoft.com/kb/915782/en-us

     

    打asp.net 2.0最新补丁,Microsoft .NET Framework 2.0 Service Pack 1 (SP1).

     

    修复列表http://support.microsoft.com/kb/945757

    2008年4月18日 8:21
    版主
  •  

    噢,原来是这样吗
    2008年4月18日 8:27
  • Code Snippet

     

    <compilation batch="false" debug="false"/>

     

     

     

    也可以修复
    2008年4月18日 8:36
    版主
  •  

    噢。谢谢!我刚搜了一下 batch="false" debug="false" 的东东,好像似乎最好不要这么设吧?
    2008年4月18日 8:45