如何在VB.NET中使用部分类公开专用字段?

时间:2010-11-12 21:05:53

标签: vb.net transactions dataset partial-classes dataadapter

这是我在Stack Overflow上的第一篇文章,所以请尽快(并随意指出)任何n00b错误。

我试图通过扩展部分类来实现VB.NET中多个TableAdapter的事务(使用Visual Studio 2010),如以下示例所述:

http://blah.winsmarts.com/2006/06/18/the-definitive-tableadapters--transactions-blog-post.aspx

madprops.org/blog/typed-datasets-and-sqltransaction /

stackoverflow.com/questions/2342289/net-tableadapter-to-dataadapter

但是,当我尝试公开设计器创建的任何私有字段时,它们会在编辑器中加下划线,并出现以下错误:

  

'_ adapter'未声明。由于其保护,它可能无法访问   水平。

搜索此网站以及谷歌并没有发现任何有用的内容,但我发现我正在搜索错误的关键字。

以下是MyDataset.vb中的代码

Partial Public Class MyTableAdapter
    Public Property MyTransaction() As SqlTransaction
        Get
            Return _adapter.SelectCommand.Transaction
        End Get
        Set(ByVal value As SqlTransaction)
            If _adapter Is Nothing Then
                InitAdapter()
            End If
            Connection = value.Connection
            _adapter.InsertCommand.Transaction = value
            _adapter.UpdateCommand.Transaction = value
            _adapter.DeleteCommand.Transaction = value
        End Set
    End Property

End Class

这是设计师代码:

Partial Public Class MyTableAdapter
    Inherits Global.System.ComponentModel.Component

    Private WithEvents _adapter As Global.System.Data.SqlClient.SqlDataAdapter
    Private _connection As Global.System.Data.SqlClient.SqlConnection
    Private _transaction As Global.System.Data.SqlClient.SqlTransaction
    Private _commandCollection() As Global.System.Data.SqlClient.SqlCommand

我错过了什么,或者这在VB中是不可能的(我见过的所有例子都是在C#中)?

TIA提供任何帮助!

JE

1 个答案:

答案 0 :(得分:0)

您可以从Adapter类访问任何公共属性/方法吗?

我想你可能在错误的命名空间中创建了你的部分类。它必须在Namespace MyDataSetTableAdapters