代码之家  ›  专栏  ›  技术社区  ›  BnWasteland

DDD友好的ASP.NET MVC模型绑定器?

  •  1
  • BnWasteland  · 技术社区  · 15 年前

    我正在考虑一个自定义模型绑定器的值,该绑定器可以实例化在我的域层中定义的不可变值对象。然后我可以通过堆栈传递它们,并将它们设置在适当的实体上。有人试过吗?运气好吗?你认为这是个愚蠢的想法吗?

    1 回复  |  直到 14 年前
        1
  •  1
  •   queen3    14 年前

    如果“值对象”是指只能通过将值传递给构造函数而不是绑定到字段来创建的对象,我认为您有以下解决方案:

    1. 编写一个自定义的活页夹——尽管我现在不能告诉你如何同时访问其中的几个字段。

    2. 传递视图模型(允许绑定到其字段),然后将其转换为值对象。使用反射(几行)编写一个简单的转换器。您必须按名称或类型关联视图模型属性和构造函数参数。您可以让视图模型定义相应的值类型,并在操作过滤器/OnActionExecuting中自动调用Converter。这是一种半自动的模型绑定。

    3. 将类似formcollection的内容传递给action,然后调用反射方法,如var value=bindvalue<valuetype>(formcollection)。

    推荐文章