Синтаксис Razor MVC

#c# #asp.net-mvc #razor

#c# #asp.net-mvc #razor

Вопрос:

Как бы я написал это в Razor?

 <%: Model[0].AddressLatitude %>
  

Следующее не работает:

 @Model[0].AddressLatitude 
  

Комментарии:

1. Действительно ли ваша модель такая же?

2. Мы должны видеть больше html, который окружает эту строку кода.

Ответ №1:

Я думаю, вам может потребоваться объявить вашу модель перечислимой, чтобы представление знало, что это массив:

 @Model IEnumerable<YourNamespace.YourModelType>
//@Model[0].AddressLatitude <-- there appears to be no indexer when using IEnumerable
@foreach (var item in @Model) {
  @item.AddressLatitude
  break;
}
  

Комментарии:

1. @Oskar: Возможно, ты прав. В этом случае вы могли бы использовать только цикл foreach и прерывать после первого элемента. Я отредактирую ответ.

2. У IEnumerable<T> нет индексатора.

3. очевидно, что это не проблема, поскольку он мог использовать его раньше … вероятно, его модель не такая