天知道。
象java一样,.net有垃圾收集器专门回收不用的对象。但具体什么时候回收是又运行库动态决定的。我们不需要考虑这些。你可以设置ds=null。这样在适当的时候垃圾收集器会自动处理的。

解决方案 »

  1.   

    你问的问题很有水平,不错,不错,可惜我不会,不过DataSet的运用无需我们过分关心,我们需要的是成功的结果,这点小事情交给微软去处理吧
      

  2.   

    sumanden你得意思是说如果我把ds定义为一个 instance变量(不知道您用过powerbuilder没有)是不是这个ds就会在我得web page 关闭之前存在?  一刀,我觉得如果这个问题不搞清楚得话,做.net得感觉就太机械了啊。什么时候要绑定数据,或者甚么时候要填充数据集感觉就像在考察记忆力啊。
      另外有一个问题,ds存在得时候它得数据还是可以被更改得吗?譬如你在编辑前没有填充数据集 而在后面把dg的cell里面的数据的text赋予了dt里面的对应位置,这时候保存。保存的数据就会是空格而不是我在dg相应的位置填写的数据,请问这是为什么???  谢谢各位的关注。:)
      

  3.   

    我认为server把页面发回客户端后dataset就不存在了.
      

  4.   

    水中日月,不是这样的吧?你可以在cancel里就用一个dg.EditItemIndex = -1看一下结果。
      

  5.   

    今天看了点东东,估计这些都和datarow的version有关,哪位仔细研究出了成果记得给我发封mail>.谢谢。
        [email protected]
      

  6.   

    个dg.EditItemIndex = -1看一下结果。
    那是你的ViewSatae的功劳,不是DataSet的结果
      

  7.   

    dataset 和所有的其他变量的生命期一样
    没有引用的时候就交给 Garbage Collection 管理
      

  8.   


    dataset 和所有的其他类型的生命期一样
    没有引用的时候就交给 Garbage Collection 管理
      

  9.   

    <你可以在cancel里就用一个dg.EditItemIndex = -1看一下结果。>看半天才明白dg是个datagrid,dg里的数据和dataset已经不是一回事了.
    即使你点第一个按钮填充dataset,第二个按钮从dataset取数都是不可能的.
    作个简单的试验:
    Public Class page
        Inherits System.Web.UI.Page
        Protected WithEvents TextBox1 As System.Web.UI.WebControls.TextBox
        Protected WithEvents Button2 As System.Web.UI.WebControls.Button
        Protected WithEvents Button1 As System.Web.UI.WebControls.Button#Region " Web 窗体设计器生成的代码 "    '该调用是 Web 窗体设计器所必需的。
        <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()    End Sub    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
            'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
            '不要使用代码编辑器修改它。
            InitializeComponent()
        End Sub#End Region
        Public str As String
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            str = "hello"
        End Sub    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            TextBox1.Text = str
        End Sub
    End Class