2016-02-15 4 views
1

Привет я начал работать над Umbraco CMS может кто-нибудь сказать мне, как отображать содержимое от модели контроллера и возвращать данные в соответствующем виде, хотите сделать что-то вроде этого: -Как получить данные от custome-контроллера, модели в umbraco?

ContactViewModel.cs

public int id { get; set; } 
public string Name { get; set; } 
public string address { get; set; } 
public string Email { get; set; } 
public string phone { get; set; } 

ContactController.cs

var result = new ContactViewModel() 
      { 
       id = 1, 
       address = "ghivto", 
       Email = "[email protected]", 
       Name = "Nimesh khatri", 
       phone = "9898989898" 
      }; 
return View("contactsDemo",result); 

как я выше список данных для конкретной точки зрения ..? я уже пробовал «https://www.youtube.com/watch?v=sDQwu_DzYyc», но все равно я не получил ... может кто-нибудь его продумать .. спасибо заранее.

+0

Я настоятельно рекомендую вам прочитать http://24days.in/umbraco/2013/creating-reusable-code-in-mvc-apps/, если вы добавите немного больше MVC к стандартной установке Umbraco, вы можете хочу немного настроить его, но этот подход отличный – daniel

ответ

0

Если вы хотите сделать это в Умбрако и по-прежнему иметь доступ к заманчивой системе Umbraco и т. д., вам необходимо использовать SurfaceController. Это контроллер, который наследует все полезные вещи Umbraco.

В принципе, вы должны создать свою ViewModel, а затем Surface Controller для обработки всех действий (Render, Process и т. Д.). Затем вы назовете этот поверхностный контроллер на вашем Umbraco View для контактной страницы (или на какой странице вы хотите, чтобы это отображалось).

Похоже, что видео вы связаны с уже охватывает как сделать это, но вы можете найти пример, который очень похож на ваш пример здесь: http://creativewebspecialist.co.uk/2013/07/22/umbraco-mvc-what-on-earth-is-a-surface-controller/

+0

это было бы полезно asnswer, спасибо. –

+0

вы можете сделать одну живую демо с umbraco и поделиться со мной? –

1

SurfaceController предоставляет контроллер, как вы будете использовать в стандартном MVC и также дает доступ к помощникам Умбрако.

public MyController : SurfaceController { 
    [ChildActionOnly] 
    public PartialViewResult MyAction(SomeObject data) 
    { 
     var result = new ContactViewModel() 
      { 
       id = 1, 
       address = "ghivto", 
       Email = "[email protected]", 
       Name = "Nimesh khatri", 
       phone = "9898989898" 
      }; 
     return View("~/Views/PartialViews/contactsDemo.cshtml",result); 
    } 
} 

Вы можете получить доступ к этой информации с точки зрения бритвы на основе шаблона или макроса парциальное с помощью:

@Html.Action("MyAction","MyController", new { data = new { Test = "I am data" } }) 

Примечание: Передача данных может быть что угодно, от одной строки до полного объекта, который связывается с переменные в действии.

Как и в случае с MVC, существует несколько способов доступа к файлу частичного просмотра. В приведенном выше примере есть «абсолютный» путь, который также можно совместить с вашей структурой папок вида с именем контроллера и именем представления имени действия. (MyAction.cshtml).