MVC3 IEnumerable модели не находит правильный шаблон редактора

У меня есть следующая модель:

public class Filter
{
    public string Field { get; set; }

    public string Operator { get; set; }

    public string Value { get; set; }
}

И следующий контроллер:

public class FilterController
{
    public ActionResult Index()
    {
        IList<Filter> model = new List<Filter>() {
            new Filter(), 
            new Filter()
        };

        return View(model);
    }
}

И следующее представление:

@model IEnumerable<Filter>
@Html.EditorForModel()

Это должно искать мой EditorTemplate Filter.cshtml, и отображать шаблон для каждого элемента в списке, верно?

Используя Glimpse, я заметил, что MVC ищет IEnumerable`1.cshtmlвместо Filter.cshtml

То же самое происходит, когда я использую

@Html.EditorFor(model => model)

Когда я делаю это:

@Html.EditorFor(model => model, "Filter")

Я получаю сообщение об ошибке, говорящее о том, что Filter.cshtmlожидает модель типа Filter, но получил модель типа IEnumerable

Am I правильно это делаешь? Нужно ли мне делать что-то еще, чтобы получить список моделей для правильного отображения с использованием правильного шаблона редактора?

5
задан Kyle Trauberman 19 April 2012 в 18:25
поделиться