Это интересный вопрос, есть много способов подойти к нему.
Вы можете загрузить структуру меню из XML, именно так работают встроенные элементы управления перемещением ASP.NET / настройка «карта сайта». В целом это, вероятно, хороший выбор, и в Visual Studio для этого есть достаточно хорошие инструменты.
Если это динамическое меню, которое нуждается в значительных изменениях, неплохо было бы получить элементы из базы данных, но вы определенно захотите их кэшировать, чтобы БД не попадал на каждую страницу. 1005 *