Как я могу вызвать метод WebApi из метода действия контроллера MVC?

Как я могу вызвать метод Web API из метода контроллера действий MVC. Это то, что я пытаюсь, это мой метод контроллера:

public ActionResult ProductDetail(long id)
{
    using (var client = new HttpClient())
    {
        var productDetailUrl = Url.RouteUrl(
            "DefaultApi",
            new { httproute = "", controller = "ProductDetails", id = id },
            Request.Url.Scheme
        );
        var model = client
                    .GetAsync(productDetailUrl)
                    .Result
                    .Content.ReadAsAsync<ProductItems>().Result;

        return View(model);
    }
}

Мой метод веб-API:

private ProductEntities products = new ProductEntities();

public IEnumerable<ProductItems> GetProductDetail(int ID)
{            
   var produc= products.ExecuteStoreQuery<ProductItems>(
            "GetProductDetail @ProductID ", 
            new SqlParameter("@ProductID", ID)); 

   return produc;
}

Когда я делаю это, я получаю модель error @ var в моем методе действия MVC после возвращения данных, говоря

"Newtonsoft.Json.JsonSerializationException: Cannot deserialize JSON array "(i.e. [1,2,3]) into type 'ProductDetails.Models.ProductItems'. The deserialized type must be an array or implement a collection interface like IEnumerable, ICollection or IList. To force JSON arrays to deserialize add the JsonArrayAttribute to the type. Line 1, position 1."

Может ли кто-нибудь помочь мне сделать это ... или предложить мне какой-либо другой лучший способ, или исправить меня, если я делаю что-то не так в любом месте ... Я должен показать возвращенные данные в моем представлении ... данные должны быть возвращены в мой контроллер

Ответы на вопрос(2)

Ваш ответ на вопрос