Я создаю MVC-приложение, которое в настоящее время использует EditorFor для генерации множества просмотров.Весь вид в основном просто EditorForModel, и он прекрасно работает.Тем не менее, я столкнулся с одной маленькой проблемой, для которой я не могу найти решение, и важно, чтобы она работала так, как мне нужно, и именно при попытке визуализации Editor для интерфейса.О привязках и обо всем остальном позаботились, но проблема в том, что EditorFor видит, что это интерфейс, и по умолчанию использует шаблон «Объект».Мне нужно, чтобы он посмотрел на интерфейс и увидел, может ли он найти шаблон с таким именем, а если нет, мне нужно просмотреть все имеющиеся интерфейсы, чтобы увидеть, соответствует ли он какому-либо из них.Чтобы объяснить это более просто, посмотрите на этот пример:
интерфейсы:
public interface IAppProvider
{
string Name { get; set; }
}
public interface IAppMusicProvider : IAppProvider
{
int GetPlaylistCount();
} // Yeah, I know, this interface is not smart, but it's only for show.
Если я сейчас создаю View с model = "IAppMusicProvider" и запускаю Html.EditorForModel()
, мне нужно этонайдите шаблон «~ Views \ Shared \ EditorTemplates \ IAppProvider.cshtml».Есть ли какой-нибудь простой способ добиться этого?