Вероятно, наиболее элегантным решением является использование настраиваемого атрибута. Позже вы можете получить доступ к метаданным модели, используя: ViewData.ModelMetadata.
Например:
[Foreign(Type="DropDown", TableName="Countries")]
public int IdCountry { get; set; }
где ForeignAttribute - это класс, который вы должныобъявите, а затем используйте его для создания шаблона редактора.