Как я могу выставить частные поля, используя частичный класс в VB.NET? - PullRequest
2 голосов
/ 13 ноября 2010

Это мой первый пост о переполнении стека, поэтому, пожалуйста, исключайте (и не стесняйтесь указывать) любые ошибки n00b.

Я пытаюсь реализовать транзакции для нескольких адаптеров таблиц в VB.NET (используя 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

Однако, когда я пытаюсь открыть любое из закрытых полей, созданных дизайнером, они подчеркиваются в редакторе со следующей ошибкой:

'_ адаптер' не объявлен.Он может быть недоступен из-за уровня защиты.

Поиск по этому сайту, так же как и по Google, не выявил ничего полезного, но perhpas Я ищу неправильные ключевые слова.

Здеськод в 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 голосов
/ 13 ноября 2010

Можете ли вы получить доступ к каким-либо открытым свойствам / методам из класса Adapter?

Я думаю, что вы, возможно, создали свой частичный класс в неправильном пространстве имен.Должно быть в Namespace MyDataSetTableAdapters

...