NopCommerce架构分析之(五)Model绑定Action参数
作者:WalsonTung 时间:2024-06-05 09:26:43
asp.net MVC中Action参数不只是一些基本类型,也支持实体参数。那么从客户端传来的数据如何映射或转换成实体对象呢?就是通过实体绑定类ModelBinder。此系列类在请求转化为后台Controller的Action方法前,捕获传递过来的数据,并对其进行解析和转换,最终为实体类对象。
在系统启动前,Global.asax.cs中的方法Application_Start方法调用下面代码定义参数转换规则。
//model binders
ModelBinders.Binders.Add(typeof(BaseNopModel), new NopModelBinder());
NopModelBinder继承DefaultModelBinder承担系统的实体绑定类,但好像只是留一个接口,并没有使用。主要是继承父类的方法,稍有改变的地方是:方法BindModel添加了对NopModel的绑定支持。
public override object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var model = base.BindModel(controllerContext, bindingContext);
if (model is BaseNopModel) ((BaseNopModel) model).BindModel(controllerContext, bindingContext);
return model;
}
方法GetModelProperties添加了一个过滤方法,只是此方法尚未启用。
类BaseNopModel是所有Model的基类,支持对自定义属性的存储。并且有一个绑定到解析器的方法BindModel,只是尚未发现有子类实现此方法。
标签:NopCommerce,Model,Action
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
在SQL Server 2008中安装安全审计
2009-02-24 17:22:00
在VS2019环境下使用Opencv调用GPU版本YOLOv4算法的详细过程
2023-05-12 10:50:46
![](https://img.aspxhome.com/file/2023/9/109539_0s.jpg)
JavaScript中自带的 reduce()方法使用示例详解
2024-02-24 09:37:11
Python计算矩阵的和积的实例详解
2021-06-06 10:09:34
SQL Server 数据库索引其索引的小技巧
2024-01-21 03:13:40
Mootools 1.2教程(10)——Fx.Tween的使用
2008-12-02 18:03:00
通过实例简单了解Python中yield的作用
2023-03-10 11:23:17
Python 获取指定文件夹下的目录和文件的实现
2023-12-23 22:44:29
批处理写的 oracle 数据库备份还原工具
2024-01-25 06:32:27
python绘制汉诺塔
2023-07-09 23:13:19
![](https://img.aspxhome.com/file/2023/1/60511_0s.gif)
解决Python下json.loads()中文字符出错的问题
2022-06-17 21:16:52
![](https://img.aspxhome.com/file/2023/4/103114_0s.jpg)
如何配置一个稳定的SQL Server数据库
2008-12-09 14:07:00
python画图常规设置方式
2023-11-25 03:52:04
![](https://img.aspxhome.com/file/2023/9/130799_0s.jpg)
Python中标准库OS的常用方法总结大全
2021-04-29 06:43:41
Django+zTree构建组织架构树的方法
2023-08-13 06:17:54
![](https://img.aspxhome.com/file/2023/7/112737_0s.png)
mysql 查询数据库中的存储过程与函数的语句
2024-01-26 17:30:35
golang时间/时间戳的获取与转换实例代码
2023-09-02 06:04:43
MYSQL中Truncate的用法详解
2024-01-17 12:00:09
Numpy中Meshgrid函数基本用法及2种应用场景
2023-05-11 20:13:21
![](https://img.aspxhome.com/file/2023/3/101203_0s.jpg)
Python Flask框架开发之运用SocketIO实现WebSSH方法详解
2021-11-06 01:03:33
![](https://img.aspxhome.com/file/2023/9/133739_0s.png)