У меня есть несколько общих вопросов о web.config и о том, как он работает в отношении ссылок на сборки. Я играл с новым движком Razor, и у меня возникли проблемы с его запуском и запуском.
Моя проблема началась с общего
Имя типа или пространства имен 'XXXXX'
не существует в пространстве имен
«XXXXX» (вам не хватает сборки
ссылка?)
Теперь я подумал, что это всего лишь простая ссылка на проект, и я буду в пути. Но даже после того, как я добавил ссылку на отсутствующую сборку, мой проект продолжал ломаться.
Я нашел решение, и мне пришлось добавить ссылку на сборку в файле web.config. Как только я это сделал, все работало нормально.
Сначала , я хочу понять, почему для решения этой проблемы потребовалось добавить ссылку на web.config. Почему ссылка на проект не была достаточно хорошей?
Второй , когда дело доходит до добавления ссылок в web.config, я хотел бы понять синтаксис. Когда я вижу разметку вот так
<add assembly="System.Web.WebPages" />
мне кажется очень ясным, что я добавляю сборку с именем System.Web.WebPages. Но полный синтаксис в моем web.config:
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
Версия кажется самоочевидной, но для чего используется культура и PublicKeyToken? Они требуются? Что произойдет, если я не знаю ни одного из них, могу я просто вставить что-нибудь?