【问题标题】:Should I inherit controller on my model class to be able to use Json();我是否应该在我的模型类上继承控制器才能使用 Json();
【发布时间】:2015-01-03 06:05:39
【问题描述】:

在我的模型构造函数中,我希望能够使用:

string s = Json(object);

Json() 工作的唯一方法是让模型类继承Controller

我不知道这是否是一件坏事,但它给我的印象是模型不应该从控制器继承的警告。在模型内部使用 Json() 这是不好的做法吗?这是否在模型中添加了太多逻辑?

如果重要,是否有其他方法可以添加引用以使 Json() 在不继承控制器的情况下工作?

【问题讨论】:

  • 嗯,模型不是控制器,所以我想说它不应该从它继承。你有没有弄清楚为什么Controller继承允许你使用Json方法?
  • 那根本行不通。 Json() 返回一个 ActionResult
  • 为什么需要这样做?
  • 为什么要从模型创建JsonResult

标签: c# asp.net-mvc-5


【解决方案1】:

绝对不是,你不应该从 Controller 继承 Model。

ASP.Net MVC 模型通常只是具有最少逻辑的数据传输对象 - Yes or no: Should models in MVC contain application logic?。还有其他视图 [MVC: Where to put business logic?,但没有任何情况下您会将“模型”设置为控制器。

注意:您可能正在寻找Parse JSON in C#,而不是使用返回ActionResultController.Json

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-09
    • 2013-09-26
    • 2011-07-19
    • 1970-01-01
    • 2011-04-21
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    相关资源
    最近更新 更多