Вопрос

Привет, я сейчас играю с проектами замков ActiveRecord и средством удаленного взаимодействия.

Моя текущая проблема заключается в том, что мне нужно найти способ реализовать подпрограмму сохранения из IBaseRepository в моем классе адресов, и я не знаю, как это сделать.

Вот мой текущий код, VS сообщает мне в строке «Осуществляет IADdress», что я должен реализовать Sub Save (OBJ как iAdress) для [Shared] .ibaserePository (of [shared] .iaddress)

и в режиме онлайн Public Overrides Sub Save(ByVal obj As Address) Реализует IBaseRepository(Of IAddress).Save

что я не могу реализовать сохранение, потому что в [Shared].IBaseRepository (Of [Shared].IAddress) нет дополнительного сохранения.

Я просто не понимаю :( Пожалуйста, просветите меня.

Тиа

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
Это было полезно?

Решение

 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
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top