Ваш пример на самом деле не завершен, но я собираюсь предположить, что ваш блок кода существует на уровне класса, а не внутри метода конструктора. Проблема в том, что базовый класс (WebFormViewEngine
) инициализирует свойства "формата местоположения" в конструкторе, следовательно, переопределяет ваше объявление;
public CustomViewEngine()
{
MasterLocationFormats = new string[] {
"~/Views/AddedMaster.Master"
};
}
Если вы хотите, чтобы жестко закодированный мастер включился только как своего рода последнее усилие по умолчанию, вы можете сделать что-то вроде этого:
public CustomViewEngine()
{
MasterLocationFormats = new List<string>(MasterLocationFormats) {
"~/Views/AddedMaster.Master"
}.ToArray();
}