2014-10-17 2 views
1

Im пытается получить строку вернулся из ActionResult к представлениюUrl.Action не показывает данные

Контроллер

public ActionResult GetName(string id) 
    { 
     string returnName; 
     returnName = m_DB.UserProfiles.Find(id).FirstName; 

     return Content(returnName); 
    } 

Посмотреть

<li> 
     @Url.Action("GetName", "UserProfile", new {id=User.Identity.GetUserId()}) 

    </li> 

Когда я бегу, он просто показывает это на вид

/UserProfile/GetName/7781341a-ab1b-4b1d-b75b-853376690bf4

Все, что я хочу, это показать имя пользователя. Что я делаю не так? Пожалуйста помоги. Я ценю ваш вклад.

ответ

1

Я думаю, что метод, который вы ищете @Html.RenderAction или @Html.Action

@Html.RenderAction("GetName", "UserProfile", new {id=User.Identity.GetUserId()}) 

или

@Html.Action("GetName", "UserProfile", new {id=User.Identity.GetUserId()}) 

@Url.Action принимает параметры, которые обеспечивают его и строит URL в то время как @Html.RenderAction делает результат из действие inline в представлении, где оно вызывается.

+0

Привет, Спасибо, кучи за быстрый ответ. Однако, когда я добавляю ваш код, он дает ошибку: Невозможно преобразовать неявно 'void' в 'object' –

+0

@RandikaWijekoon Какая ошибка вы получаете? – scartag

+0

Невозможно преобразовать неявно 'void' в 'object' –