0

我的这段代码有什么问题?

代码工作正常,但是当我在表中输入新记录并刷新页面时,将不会反映更改...

我很困惑是什么问题..

 Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
        Dim ds As New DataSet()
        Dim connStr As String = "Data Source=DOBRIYAL-PC;Initial Catalog=MenuDb;Integrated Security=True"
        Using conn As New SqlConnection(connStr)
            Dim sql As String = "Select MenuID, Text, Description, ParentID from Menu"
            Dim da As New SqlDataAdapter(sql, conn)
            da.Fill(ds)
            da.Dispose()
            da.AcceptChangesDuringFill = True
        End Using
        ds.DataSetName = "Menus"
        ds.Tables(0).TableName = "Menu"
        ds.GetChanges()
        Dim relation As New DataRelation("ParentChild", ds.Tables("Menu").Columns("MenuID"), ds.Tables("Menu").Columns("ParentID"), True)

        relation.Nested = True
        ds.Relations.Add(relation)
        XmlDataSource1.Data = ds.GetXml()

        If Request.Params("Sel") IsNot Nothing Then
            Page.Controls.Add(New System.Web.UI.LiteralControl("You selected " + Request.Params("Sel")))
        End If
        XmlDataSource1.DataBind()
        RadMenu1.DataBind()
    End Sub
4

1 回答 1

0
I have refatored your source code now you should see your new records on page load

Private Sub BindData()
    Dim ds As New DataSet()
    Dim connStr As String = "Data Source=DOBRIYAL-PC;Initial Catalog=MenuDb;Integrated Security=True"
    Using conn As New SqlConnection(connStr)
        Dim sql As String = "Select MenuID, Text, Description, ParentID from Menu"
        Dim da As New SqlDataAdapter(sql, conn)
        da.Fill(ds)
        da.Dispose()
        da.AcceptChangesDuringFill = True
    End Using
    ds.DataSetName = "Menus"
    ds.Tables(0).TableName = "Menu"
    ds.GetChanges()
    Dim relation As New DataRelation("ParentChild", ds.Tables("Menu").Columns("MenuID"), ds.Tables("Menu").Columns("ParentID"), True)

    relation.Nested = True
    ds.Relations.Add(relation)
    XmlDataSource1.Data = ds.GetXml()

    If Request.Params("Sel") IsNot Nothing Then
        Page.Controls.Add(New System.Web.UI.LiteralControl("You selected " + Request.Params("Sel")))
    End If
    XmlDataSource1.DataBind()
    RadMenu1.DataBind()
End Sub


  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 Me.BindData()
End Sub
于 2012-09-15T19:37:53.727 回答