Документы для @MasterType имеют этот пример.
<%@ Page masterPageFile="~/MasterPage.master"%>
<%@ MasterType virtualPath="~/MasterPage.master"%>
Зачем @MasterType
вообще нужно? Разве компилятор не может автоматически выполнять те же действия, основываясь исключительно на @Page masterPageFile
? Когда вы не хотите использовать оба?