Asp.net mvc 3 razor получить один элемент из IEnumerable

Моя модель просмотра (СПИСОК) выглядит следующим образом:

public class ConversationModel 
    {
        public int ID { get; set; }
        public string Body { get; set; }
        public DateTime Datetime { get; set; }
        public string Username { get; set; }
        public string ImgUrl { get; set; }
        public string ToUserID{ get; set; }
    }

это мой взгляд

@model IEnumerable<NGGmvc.Models.ConversationModel>

Как я могу получить ToUserID в текущем положении? что-то вроде этого

@model [0].ToUserID

Спасибо

Ответ 1

Вы должны уметь:

@Model.First().ToUserID

Обратите внимание, что вы можете проверить, есть ли какие-либо элементы в перечисляемом сначала, как если бы их не было, тогда First() вернет null

(Обратите внимание, что в вашем вопросе у вас был @Model [0], я предполагаю, что вы конкретно пытаетесь получить первое значение. Возможно, у меня неправильный конец палки, и в этом случае ответ Jakub должен сортировать вас! )

Ответ 2

Вы должны иметь возможность использовать следующее:

@Model.First().ToUserID

Однако, если ваша модель будет ссылаться только на первый элемент перечисления в представлении, я бы рекомендовал вам передать этот элемент только этому представлению.

Например:

@model ConversationModel

@Model.ToUserID

И в контроллере передается только первый элемент:

List<ConversationModel> conversationList = //your conversation model initialisation code
return View(conversationList.First());

Ответ 3

@foreach(var model in Model)
{
    @model.ToUserID
}