Ваша модель View - это набор строк, а не объектов хранения.
Поэтому, когда вы делаете
foreach(var Store in Model)
каждый Store
является только строкой, и вы не можете сделать Store.state
Либо измените метод GetStoreStates
, чтобы он возвращал список объектов магазина, либо измените содержимое вашего foreach на
<%= Html.Encode(Store) %>
Редактировать: Обновлено после комментариев.
Проблема в том, что вы пытаетесь выполнить Distinct () для строки. Если бы это сработало, оно получило бы только строку с разными символами.
Кажется, это больше, чем вы хотите:
public IQueryable<String> GetStoreStates()
{
return (from Store in db.Stores
orderby Store.State
select Store.State).Distinct();
}
Это будет выполнять Distinct () в списке состояний вместо каждой строки состояния.