Asp.net mvc 3 在不同的控制器中使用ActionResult中的ASP WebAPI

Asp.net mvc 3 在不同的控制器中使用ActionResult中的ASP WebAPI,asp.net-mvc-3,asp.net-web-api,Asp.net Mvc 3,Asp.net Web Api,从另一个控制器中的ActionResult使用WebAPI服务的最佳方式是什么? 基本上我有一个返回数据的控制器 public class MyApiController : ApiController { public MyData Get() { //returns the data } } 我想从中使用这些数据 public class MyConsumeController: Controller { public ActionResul

从另一个控制器中的
ActionResult
使用WebAPI服务的最佳方式是什么? 基本上我有一个返回数据的控制器

public class MyApiController : ApiController
{
    public MyData Get()
    {
      //returns the data
    }

}
我想从中使用这些数据

public class MyConsumeController: Controller
{

    public ActionResult MyConsumeAction()
    {
       var something = //Call Get inside MyApiController 
    }
}
有什么想法吗


注意:我知道如何使用HttpClient(不同的项目)或jquery(从视图)使用它。

您可以使用-the类。以下是。

控制器是否在同一个应用程序中?如果是,为什么不将
MyData Get()
提取到一个单独的类中,并从两个位置使用它呢?这是一个webapi服务。要调用Get(),请转到/api/MyApiController。感谢您花时间访问Answare并提供指向示例的链接,但我知道如何使用HttpClient。我在便笺中写道(“我知道如何使用HttpClient使用它”),我在想是否还有其他方法可以知道?如果这是最好的办法,我会接受你的回答。那是最好的办法。您可以使用标准WebClient,但必须手动解析JSON等内容。所有这些都是在新的HttpClient中构建的。谢谢。我只是想和某人确认一下我使用的方法。@plurby,如果应用程序相同,那么使用内存主机。