【发布时间】:2011-03-11 19:23:52
【问题描述】:
我有一个带有如下构造函数的控制器:
Public Sub New(Service As ICategoryService)
服务的构造函数如下所示:
Public Sub New(Repository As IRepository(Of Category), IValidationDictionary)
我有一个名为 ModelStateWrapper 的类,它实现了 IValidationDictionary:
Public Class ModelStateWrapper
Implements IValidationDictionary
Private ModelState As ModelStateDictionary
Public Sub New(ModelState As ModelStateDictionary)
Me.ModelState = ModelState
End Sub
Public Sub AddError(Key As String, Message As String) Implements Core.Interfaces.IValidationDictionary.AddError
ModelState.AddModelError(Key, Message)
End Sub
Public ReadOnly Property IsValid As Boolean Implements Core.Interfaces.IValidationDictionary.IsValid
Get
Return ModelState.IsValid
End Get
End Property
End Class
我想将控制器的 ModelState 注入到 ModelStateWrapper 中,然后将其注入到服务中。这可能吗?
我查看了 Ninject 中的自定义提供程序,并让控制器继承了 BaseController 类,但它似乎不起作用。有什么想法吗?
另外,可以从控制器使用的服务层中进行验证的标准方法是什么?
【问题讨论】:
标签: asp.net-mvc ninject