未声明ScriptManager - 错误信息

时间:2010-12-20 23:44:02

标签: vb.net scriptmanager


我是这个类,它给了我一个错误名称'ScriptManager未声明'

Public NotInheritable Class ResponseHelper
Private Sub New()
End Sub
Public Shared Sub Redirect(ByVal response As HttpResponse, ByVal url As String, ByVal target As String, ByVal windowFeatures As String)
    If ([String].IsNullOrEmpty(target) OrElse target.Equals("_self", StringComparison.OrdinalIgnoreCase)) AndAlso [String].IsNullOrEmpty(windowFeatures) Then
        response.Redirect(url)
    Else
        Dim page As Page = DirectCast(HttpContext.Current.Handler, Page)
        If page Is Nothing Then
            Throw New InvalidOperationException("Cannot redirect to new window outside Page context.")
        End If
        url = page.ResolveClientUrl(url)
        Dim script As String
        If Not [String].IsNullOrEmpty(windowFeatures) Then
            script = "window.open(""{0}"", ""{1}"", ""{2}"");"
        Else
            script = "window.open(""{0}"", ""{1}"");"
        End If
        script = [String].Format(script, url, target, windowFeatures)
        ScriptManager.RegisterStartupScript(page, GetType(Page), "Redirect", script, True)
    End If
End Sub 

结束班

此链接的代码:
http://weblogs.asp.net/infinitiesloop/archive/2007/09/25/response-redirect-into-a-new-window-with-extension-methods.aspx

我已经花了8个小时试图找出如何打开新页面并向其发送参数。并找到了这段代码,并试图应用它6个小时但没有。

感谢。

2 个答案:

答案 0 :(得分:0)

尝试在scirptmananger之前输入全名空间,System.UI.Web.ScriptManager.RegisterStartupScript(...)

答案 1 :(得分:0)

您需要安装Ajax才能访问Scriptmanager。 请改用Page.ClientScript.RegisterStartupScript。 如果您想要一个无论AJAX是否可用的解决方案,请查看at this link