【发布时间】:2015-12-17 16:54:05
【问题描述】:
由于某些要求,我需要将带有 System.Net.Http.HttpClient 的代码从控制器移动到 cshtml 文件。但是,我似乎无法在 cshtml 文件中调用 System.Net.Http.HttpClient。
那么,我的问题是如何在 cshtml 文件中调用 httpclient?
至于为什么我需要在 cshtml 文件中调用 HttpClient,这是因为我需要为使用相同布局的页面使用相同的外部 API。这意味着如果我需要将它包含在控制器中,我将不得不包含在几乎每个控制器中(超过一百个),我觉得这是多余的。
场景:调用web api返回菜单列表并显示在cshtml文件中,Layout="CustomLayout.cshtml"
我希望给出的场景能很好地解释为什么我需要在 cshtml 中调用 httpclient。如果有更好的选择,我很感激。
【问题讨论】:
-
我仍然看不出有任何理由让您在 cshtml 中的页面上放置 HttpClient 或 API 调用,这很危险,只会破坏您的架构,请考虑为此使用 RenderAction 或 ViewModels跨度>
标签: c# asp.net-mvc api asp.net-mvc-4