gpt4 book ai didi

asp.net-mvc - 针对 API Controller 创建 View ?

转载 作者:行者123 更新时间:2023-12-05 05:26:49 25 4
gpt4 key购买 nike

我需要创建一个网站,其中的一些页面应该可以通过 API 从外部客户端访问,但我仍然想制作常规的 MVC Razor View 来检索、显示和操作相同的数据。

实现此目标的最佳方法是什么?

更新

API 必须公开的只是数据操作。

对于网页,我仍然希望从 razor chtml View 中受益,我不希望使用冗余的 jQ 或 JS 或使用数据的 data- 属性污染我的 View 。

最佳答案

只需用您想要的页面创建一个 MVC 项目,然后创建 ApiController(来自 Web API 框架)作为 RESTful 端点。您可以对 View 进行编程,以将 API 操作中的数据作为 JSON 对象检索,并使用 javascript 使用它们。其他人可以执行相同的 API 操作并以其他方式使用数据。

如果你想从 WebApi 开始,并基于其他人可以通过该 API 访问的相同数据构建基本 View ,你可以将你的 WebApi Controller 注入(inject)你的普通 MVC Controller ,并调用它们的方法来获取数据您需要构建您的 ViewModel。只要您的 API Controller 不需要做任何“开箱即用”的事情,比如直接检查 Request 对象,这应该就可以正常工作。

一个更健壮的方法是创建一个“管理器”层来处理您的应用程序的所有业务逻辑,然后让您的 ApiControllers 只是围绕调用它们各自的管理器类的薄包装器。这会增加一点维护成本,但会更好地遵守单一职责原则。

关于asp.net-mvc - 针对 API Controller 创建 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23532496/

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