asp.net-mvc - 从 MVC Controller 调用 Web API 来构建和传递模型以查看

标签 asp.net-mvc razor asp.net-web-api

我正在尝试掌握许多对我来说很陌生的概念,我需要一些关于使用 Web API 创建强类型模型并将其从我的 MVC Controller 传递到其 Razor View 的最佳方式的说明。

正如在许多示例中所见,您通常从某个存储库创建模型,然后将其传递给 View (强类型或非强类型),然后使用 Razor 语法,该语法使您可以访问模型来构建 html,而不必使用 JavaScript .

对我来说,事情变得复杂的地方是,当我想使用 Web API 创建我想使用的模型时,就像我在上一段中描述的那样使用它。

我应该调用新的 HTTPClient 来从我的 Controller 中调用 Web API 服务吗?
我需要反序列化和格式化响应吗?等等...

我总是在 View 中看到来自脚本的调用和操作......

有人能指出我正确的方向吗?

谢谢。

最佳答案

如果您的 WebAPI 是一个单独的端点,即不属于您现有站点的一部分,那么是的,您必须发送 HttpWebRequest从 Controller 内部,然后序列化响应中的数据并将其传递到您的 View 中。

或者,您可以通过 AJAX 直接从 View 内部调用 API,但是,我不确定您是否需要 Controller 在数据归结到 View 之前对其进行处理。

关于asp.net-mvc - 从 MVC Controller 调用 Web API 来构建和传递模型以查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11344808/

相关文章:

javascript - 动态添加字段输入不存储值并传递给 Controller

asp.net - 将字符串数组作为参数传递给 asp.net mvc webapi 方法

c# - JsonResults 返回枚举值而不是字符串表示

asp.net - 如何通过@Html.DropDownListFor正确设置选定状态

c# - 模型中每一行的 MVC Razor 局部 View 单选按钮选择

razor - 在Asp.net MVC4 Web应用程序中使用和创建帮助器

c# - 自定义 Json Serializer 通过忽略类属性来序列化和反序列化所有属性

C# web api Swagger 集成

c# - MVC - 验证 - ViewModel 是否应该有权访问数据库

html - 使用 IE 从不同主机获取时的 CSS 图像路径