【问题标题】:Should I write from Controller, Code Behind, or Helper in MVC?我应该从 MVC 中的 Controller、Code Behind 还是 Helper 编写?
【发布时间】:2011-04-20 20:09:06
【问题描述】:

我已经看到所有关于视图没有代码隐藏的问题和答案,但是我有一个案例,我需要复杂的逻辑来生成表示(视图)层。我必须根据从 db 获得的数据输出一个 PDF 文件。生成此 PDF 并写入响应流的最佳位置在哪里?从控制器执行 response.write 对我来说感觉很不对,但我想对此做出回应,并希望使用视图的代码隐藏文件来生成 PDF。我想我可以将数据封装在 viewmodel 类中并将其传递给 Helper 方法以生成输出,在这种情况下,什么被认为是最佳实践,特别是围绕创建 PDF 有很多逻辑?

【问题讨论】:

    标签: asp.net-mvc model-view-controller code-behind asp.net-mvc-3


    【解决方案1】:

    我会为此创建一个 ActionResult 类并从控制器返回它。 ActionResult 类负责将内容写入输出流。

    【讨论】:

    【解决方案2】:

    更好的方法是定义一个专门用于输出 pdf 文件的 ActionResult。这样您就可以在其他应用程序中轻松重用代码

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 1970-01-01
      • 1970-01-01
      • 2010-12-17
      • 2012-09-09
      • 1970-01-01
      • 2016-01-25
      相关资源
      最近更新 更多