1
盲目地覆盖绑定上下文的ModelMetaData来设置模型的类型是否安全?我担心可能会使用活页夹在编辑场景中更新预建模型,如果我只覆盖ModelMetaData,则会丢失数据。对IModelBinder.BindModel的调用是否已经设置了bindingContext.Model/ModelMetadata?
示例代码:
Public Class CustomModelBinder
Inherits DefaultModelBinder
Public Overrides Function BindModel(ByVal controllerContext As ControllerContext, ByVal bindingContext As ModelBindingContext) As Object
bindingContext.ModelMetadata = ModelMetadataProviders.Current.GetMetadataForType(Nothing, GetSpecificModelTypeBasedOnBindingData(bindingContext))
Return MyBase.BindModel(controllerContext, bindingContext)
End Function
End Class
有没有一种方法,以确认ModelMetadata是同类型的那GetSpecificModelTypeBasedOnBindingData(BindingContext中)将返回,如果没有抛出异常? –
你可以比较'bindingContext.ModelMetadata.ModelType == GetSpecificModelTypeBasedOnBindingData(bindingContext)',我想。 – HackedByChinese