2013-05-27 3 views
1

У меня есть данные в моем apicontroller в следующихпрохождение данных JSON метода WebAPI от контроллера для просмотра

ПУТЬ
public class OutletPOCController : ApiController 
{ 
    OutletPOCContext db = new OutletPOCContext(); 

    [System.Web.Http.ActionName("GetTabText")] 
    public TabTextModel GetTabText(int bizId) 
    { 
     var outlet = db.Info.Where(t => t.BizId == bizId).SingleOrDefault(); 
     return new TabTextModel 
     { 
      HomeTab = outlet.BizHomeTabText, 
      AboutTab = outlet.BizAboutTabText, 
      TimingsTab = outlet.BizTimingsTabText, 
     }; 
    } 

А теперь я хочу, чтобы получить эти данные в моей точки зрения. Как мне создать представление для этого контроллера и передать вышеуказанные данные? Каким будет мой метод действий? Я новичок в webapi и json. Любая помощь заметна! Заранее спасибо!

+0

Do вы хотите, чтобы вы использовали Javascript для получения данных со стороны клиента после загрузки базовой страницы или хотите получить данные в своем представлении и работать с ним напрямую? – JensB

+0

Я хочу отобразить данные на вид, который я получаю выше webapi. – Priyanka

+1

. Посмотрите здесь http://www.codeproject.com/Articles/344078/ASP-NET-WebAPI-Getting-Started-with-MVC4- и-WebAP для учебника. – christiandev

ответ

0

Дополнение к контроллеру API действительно имеет представления в том смысле, что вы создаете страницу cshtml, которая заботится о том, как вы отображаете свои данные. Цель ApiController - просто вернуть данные в формате, который вы хотите использовать.

В основном API предоставляет исходные данные в Интернете, вы потребляете его в некотором роде, а затем отобразить его ..

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

public class APIController : ApiController 
{ 
    [HttpGet] 
    [HttpPost] // allow both post and get requests 
    public IEnumerable<String> GetData() 
    { 
     return new List<string>() { "test1", "test2" }; 
    } 
} 

При просмотре метода API выше возвращает этот XML-данные

<ArrayOfstring xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> 
    <string>test1</string> 
    <string>test2</string> 
</ArrayOfstring> 

Что я получаю с помощью Jquery и делать то, что я нравлюсь с (http://api.jquery.com/jQuery.get/):

$.get("/api/GetData", function(data) { 
    alert("Data Loaded: " + data); 
}); 

Примеры разбора XML с JS/Jquery:

Если вы просто хотите получить данные в обычный режим просмотра и работы с ней, не проходя через JavaScript Я wouldent использовать WebAPI, но вместо того, чтобы получить данные в контроллере и отправить его к представлению для отображения (ASP MVC4 - Pass List to view via view model).

Вы также можете проверить контейнер ViewBag для передачи случайных нечетных данных в представлении http://goo.gl/03JTR

На авось вы действительно хотите сделать ваши данные в целях, проверить это: Web API - Rendering Razor view by default?

Смежные вопросы