2

こんにちは、私は現在、キャッスル プロジェクトの ActiveRecord とリモーティング機能をいじっています。

私の現在の問題は、アドレス クラスで IBaseRepository から保存サブを実装する方法を見つける必要があることです。その方法がわかりません。

これが私の現在のコードです。VSは「IAddressを実装する」という行で、[Shared].IBaseRepository(Of [Shared].IAddress)にSub Save(obj As IAddress)を実装する必要があることを教えてくれます。

およびオンライン上 Public Overrides Sub Save(ByVal obj As Address) IBaseRepository(Of IAddress).Save を実装

[Shared].IBaseRepository(Of [Shared].IAddress) に Sub Save がないため、Save を実装できません。

私はそれを理解していません:(私を啓発してください。

ティア

Public Interface IBaseRepository(Of T As Class)  
     Sub Save(ByVal obj As T)  
End Interface

Public Interface IAddress  
    Inherits IBaseRepository(Of IAddress)  
    Property Guid() As Guid  
    Property CompanyName() As String  
    Property Surename() As String  
    Property Christianname() As String  
End Interface`

Public Class BaseRepository(Of T As Class)  
Inherits MarshalByRefObject   
Implements IBaseRepository(Of T)

    Protected mediator As ActiveRecordMediator(Of T)  

    Public Overridable Sub Save(ByVal obj As T) Implements IBaseRepository(Of T).Save  
        ActiveRecordMediator(Of T).Save(obj)  
    End Sub  
End Class


<ActiveRecord("Address")> _    
Public Class Address  
    Inherits BaseRepository(Of Address)  
    Implements IAddress

    Public Overrides Sub Save(ByVal obj As Address) Implements IBaseRepository(Of IAddress).Save
        MyBase.Save(obj)
    End Sub
End Class
4

1 に答える 1

2
 Public Class Address
    Inherits BaseRepository(Of Address)
    Implements IAddress


    Public Overrides Sub Save(ByVal obj As Address)
        MyBase.Save(obj)
    End Sub


    Public Overloads Sub Save(ByVal obj As IAddress) _
         Implements IBaseRepository(Of IAddress).Save
    End Sub
 '
 ' Some other stuff...
 '
 End Class
于 2008-10-14T15:23:52.033 に答える