ジェネリックインターフェイスを使用した.NET継承
-
03-07-2019 - |
質問
Halloは現在、城プロジェクトのActiveRecordとリモート機能で遊んでいます。
私の現在の問題は、アドレスクラスでIBaseRepositoryからsave subを実装する方法を見つける必要があることで、方法がわかりません。
ここに現在のコードがありますが、VSは「" implements IAddress"」行で教えてくれます。 [Shared] .IBaseRepository(Of [Shared] .IAddress)
のSub Save(obj As IAddress)を実装する必要があることおよびオンラインPublic Overrides Sub Save(ByVal obj As Address)Implements IBaseRepository(Of IAddress).Save
[Shared] .IBaseRepository(Of [Shared] .IAddress)にサブ保存がないため、保存原因を実装できない
私はそれを取得しないでください:( 教えてください。
tia
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
所属していません StackOverflow