如何通过MVC C#中的控制器将模型数据发送到视图

马赫迪英国

我已经见过很多不同的 MVC 架构。他们都是不同的。我想知道使用控制器将模型数据发送到视图的标准方法。使用一个 setter 将模型对象发送到视图并设置视图字段是否合适?或者使用一个参数或其他方式使用多个设置器一个一个地设置视图字段?

public class View{
    public void SetField1(int value){
      //...
    }
    public void SetField2(string text){
      //...
    }
    public void SetField3(Time time){
      //...
    }
    //or
    public void SetContent(Model model){
       //...
    }
}

public class Model{
   public int _value;
   public string _text;
   public Time _time;

   public Model(int value,string text,Time time){
     //...
   }
}

public class Controller{
   Model _model;
   View _view;

   public Controller(){
      _model=new Model();
      _view=new View();
   }
   public void SetModel(Model model){
      _model=model;
      SetContentView();
   }
   public void SetView(View view){
      _view=view;
   }
   public void SetContentView(){
      _view.SetField1(_model._value);
      _view.SetField2(_model._text);
      _view.SetField3(_model._time);
      //or
      _view.SetContent(_model); // the view can not be decoupled with model!
   }
} 
扎克

您可以创建一个 ModelView 对象,该对象显式定义您的视图所需的属性。然后你可以定义一个 Mapper 类,负责将服务器端模型映射到客户端模型,从而将视图与服务器模型分离。

从你的例子:

public class Controller{
   Model _model;
   View _view;
   Mapper _mapper;

   public Controller(){
      _model=new Model();
      _view=new View();
      _mapper = new ViewModelMapper();

   }

   public void SetContentView(){
      _view.SetContent(_mapper.map(_model));
   }
} 

我对它们没有太多经验,但确实存在旨在使这不那么乏味的框架:http : //automapper.org/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

MVC将数据从视图发送到控制器

来自分类Dev

如何将数据从容器发送到iOS中的父视图控制器?

来自分类Dev

如何通过Codeigniter中的URL将数据表单视图发送到控制器,以及如何在控制器中获取数据

来自分类Dev

将控制器的多个模型发送到单个视图以获取不同形式的MVC

来自分类Dev

如何将数据库中的数据从模型发送到控制器代码标记器

来自分类Dev

无法将数据从视图发送到控制器操作 .NET MVC

来自分类Dev

通过Ajax将数据发送到控制器

来自分类Dev

如何使用CodeIgniter将数据从控制器发送到模型

来自分类Dev

如何将数据从视图发送到zend中其他指定控制器的操作?

来自分类Dev

如何将数据从视图发送到控制器

来自分类Dev

如何使用Ajax将数据从视图发送到控制器Laravel?

来自分类Dev

如何将数据从视图发送到控制器

来自分类Dev

通过Grails中的链接将参数从视图发送到控制器

来自分类Dev

如何从aspx视图将Checkbox选中的值发送到控制器中的Formcollection参数

来自分类Dev

如何将变量从控制器发送到Laravel中的视图?

来自分类Dev

通过Ajax将数据发送到yii中的控制器

来自分类Dev

如何将字符串化的Json从视图发送到MVC4中的控制器

来自分类Dev

MVC Ajax:如何将字符串从视图发送到控制器

来自分类Dev

如何使用URL将数据从javascript发送到ASP.NET MVC控制器

来自分类Dev

如何将AJAX数据从VIEW发送到控制器?(PHP(MVC)+ AJAX)

来自分类Dev

angularJs,Spring MVC:如何将数据发送到Spring控制器

来自分类Dev

正确触摸了如何使用`calloutAccessoryControlTapped`来将数据从一个视图控制器发送到详细视图控制器

来自分类Dev

当我将JSON发送到MVC控制器时,模型未绑定

来自分类Dev

MVC / AJAX-将当前模型集合发送到控制器

来自分类Dev

如何将值列表发送到MVC3中的控制器

来自分类Dev

如何将响应从 c# 类文件发送到 MVC 控制器

来自分类Dev

发布MVC表单以调用需要视图模型的控制器操作视图。为什么未将ViewModel发送到视图?

来自分类Dev

在codeigniter中,我通过<a>标记将php变量从视图页面发送到控制器,但是我无法在控制器页面中显示值

来自分类Dev

MVC4:将子部分视图值发送到控制器?

Related 相关文章

  1. 1

    MVC将数据从视图发送到控制器

  2. 2

    如何将数据从容器发送到iOS中的父视图控制器?

  3. 3

    如何通过Codeigniter中的URL将数据表单视图发送到控制器,以及如何在控制器中获取数据

  4. 4

    将控制器的多个模型发送到单个视图以获取不同形式的MVC

  5. 5

    如何将数据库中的数据从模型发送到控制器代码标记器

  6. 6

    无法将数据从视图发送到控制器操作 .NET MVC

  7. 7

    通过Ajax将数据发送到控制器

  8. 8

    如何使用CodeIgniter将数据从控制器发送到模型

  9. 9

    如何将数据从视图发送到zend中其他指定控制器的操作?

  10. 10

    如何将数据从视图发送到控制器

  11. 11

    如何使用Ajax将数据从视图发送到控制器Laravel?

  12. 12

    如何将数据从视图发送到控制器

  13. 13

    通过Grails中的链接将参数从视图发送到控制器

  14. 14

    如何从aspx视图将Checkbox选中的值发送到控制器中的Formcollection参数

  15. 15

    如何将变量从控制器发送到Laravel中的视图?

  16. 16

    通过Ajax将数据发送到yii中的控制器

  17. 17

    如何将字符串化的Json从视图发送到MVC4中的控制器

  18. 18

    MVC Ajax:如何将字符串从视图发送到控制器

  19. 19

    如何使用URL将数据从javascript发送到ASP.NET MVC控制器

  20. 20

    如何将AJAX数据从VIEW发送到控制器?(PHP(MVC)+ AJAX)

  21. 21

    angularJs,Spring MVC:如何将数据发送到Spring控制器

  22. 22

    正确触摸了如何使用`calloutAccessoryControlTapped`来将数据从一个视图控制器发送到详细视图控制器

  23. 23

    当我将JSON发送到MVC控制器时,模型未绑定

  24. 24

    MVC / AJAX-将当前模型集合发送到控制器

  25. 25

    如何将值列表发送到MVC3中的控制器

  26. 26

    如何将响应从 c# 类文件发送到 MVC 控制器

  27. 27

    发布MVC表单以调用需要视图模型的控制器操作视图。为什么未将ViewModel发送到视图?

  28. 28

    在codeigniter中,我通过<a>标记将php变量从视图页面发送到控制器,但是我无法在控制器页面中显示值

  29. 29

    MVC4:将子部分视图值发送到控制器?

热门标签

归档