gpt4 book ai didi

asp.net-mvc - 减小 asp.net mvc Controller 的大小

转载 作者:行者123 更新时间:2023-12-04 17:27:51 25 4
gpt4 key购买 nike

我有一个 Controller 。 “订单 Controller ”。目前是1800行。我喜欢缩小尺寸。我正在使用静态辅助方法,这很好,但我使用 ninject 来调用我的存储库,因此在不传递属性的情况下无法访问静态方法中的存储库。

有哪些降低 Controller 噪音的好方法?

最佳答案

如何获得瘦 Controller

  • 将可应用于多种输出类型的可重用功能重构为 ActionFilters . 结果:更少的重复代码,更精简的 Controller Action ,更快的 future 开发
  • 将适用于特定类型输出的可重用功能重构为自定义 ActionResult . 结果:更少的重复代码,更精简的 Controller Action ,更快的 future 开发
  • 杠杆ModelBinders将您的输入值绑定(bind)到注入(inject)到您的 Controller 中的复杂对象行动。 结果:您根本不需要在 Controller 中处理实际的 HTTP 输入(RouteData、Form 值、查询字符串参数)。您还可以在模型绑定(bind)器中处理数据验证。
  • 通过自定义 ControllerFactory 实现依赖注入(inject). 结果:您不需要在 Controller 中构建服务。
  • 将具有过多 Controller 操作的单个 Controller 重构为多个 Controller。 后果:您的代码变得更易于维护。
  • 将您的静态辅助方法移动到静态类。 结果:您的方法可以被多个 Controller 重用,并且 Controller 中的臃肿代码更少,因此更容易维护和更改您的应用程序。

  • 其他注意事项

    存在大量开源资源来帮助完成这些任务。我绝对建议研究 MvcContrib 项目。他们有一个 FluentController设计时考虑到构建瘦 Controller 的基类。另外,我对达林投了赞成票,因为他推荐的视频很有帮助,所以请查看

    关于asp.net-mvc - 减小 asp.net mvc Controller 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5193368/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com