有这样一个语句,我在aaa.aspx.vb里不出错,但由于我打算建立一个类,把它COPY到bbb.vb里出报错,信息如下:
-----------------------
编译错误 
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 编译器错误信息: BC30451: 未声明名称“Response”。
-----------------------报错语句为:
Response.Write("<script   language=javascript>alert('登陆成功!当前用户" & Username & "');</script>")------------------------------------------------------
现我将这两个文件源码COPY出来,请各位帮忙:
------------------------------------------------------
执行正常的文件:aaa.aspx.vbImports System.Data
Imports System.Data.SqlClient
Imports LoginCheckPartial Class _Default
    Inherits System.Web.UI.Page    Public txtSQL As String     '存放SQL语句
    Public DBSet As DataSet     '查询得到的记录集 
    Public ErrorMsg As String   '存放错误信息     Protected Sub BtnLogin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnLogin.Click
        DBSet = New DataSet
        Dim TxtSql = "select * from users where accounts = '" & TxtUsername.Text & "'"
        DBSet = ExecuteSQL(TxtSql, ErrorMsg)        If DBSet.Tables(0).Rows.Count = 0 Then
            Response.Write("<script   language=javascript>alert('登陆失败:用户名不存在!');</script>")
        Else
            If DBSet.Tables(0).Rows(0)("password") = TxtPassword.Text Then    '校验登陆密码
                Response.Write("<script   language=javascript>alert('登陆成功!当前用户" & TxtUsername.Text & "');</script>")
            Else
                Response.Write("<script   language=javascript>alert('登陆失败" & TxtUsername.Text & "');</script>")
            End If
        End If
    End Sub
End Class
--------------------------------------
--------------------------------------
执行出错的文件:bbb.vb
Imports Microsoft.VisualBasic
Imports System.Data
Imports System.Data.SqlClient
Imports Class_SqlConnPublic Class LoginCheck
    Public Shared Function UserPopedom(ByVal Username As String, ByVal Password As String) As Array
        Dim DBSet As DataSet
        Dim TxtSql, ErrorMsg As String        DBSet = New DataSet
        TxtSql = "select * from users where accounts = '" & Username & "'"
        DBSet = ExecuteSQL(TxtSql, ErrorMsg)        If DBSet.Tables(0).Rows.Count = 0 Then
            Response.Write("<script   language=javascript>alert('登陆失败:用户名不存在!');</script>")        Else
            If DBSet.Tables(0).Rows(0)("password") = Password Then    '校验登陆密码
                Response.Write("<script   language=javascript>alert('登陆成功!当前用户" & Username & "');</script>")
            Else
                Response.Write("<script   language=javascript>alert('登陆失败" & Password & "');</script>")
            End If
        End If
    End Function
End Class当执行到Response.write时出错。

解决方案 »

  1.   

    是不是Response.write不能放在类里执行?
      

  2.   

    try
    Response.Write("<script   language=javascript>alert('登陆成功!当前用户" & Username & "');</scr"&"ipt>")建议你用RegisterStarupScript方法
      

  3.   

    测试情况:
    xiahouwen(武眉博<活靶子.NET>) :行不通,还是相同的出错;amandag(高歌) 
    Imports“system.Web.HttpContext.Response.Write”中指定的命名空间或类型不包含任何公共成员,或者找不到该命名空间或类型。要确保定义了该命名空间或类型且其中至少包含一个公共成员;还要确保导入的元素名不使用任何别名
    如果只写“system.Web.HttpContext”就没有这个错误,但是原来的问题还是没有解决。
      

  4.   

    另外,我引入“System.Web.HttpResponse”也没有用。
      

  5.   

    又试了以上朋友写的办法,结果如下:System.Web.HttpContext.Response.Write 错误:对非共享成员的引用要求对象引用;
    RegisterStarupScrip 错误:未声明名称,和我用response.write一样的错误提示;