Как переместить сайт ASP.NET MVC из корневого приложения в папку подпапки? - PullRequest
0 голосов
/ 31 августа 2009

У меня есть веб-сайт MVC, который я разрабатывал, и теперь я хочу перейти на службу общего хостинга. Однако я столкнулся с небольшой проблемой: мой провайдер разрешает только одно приложение корневого уровня.

Когда я создавал приложение в качестве подпрограммы моего корневого приложения, мое приложение MVC не работало. Я либо получил бы «ресурс не найден», либо, после настройки моих маршрутов, чтобы они содержали имя подпапки », выводил ошибку« нет подходящих маршрутов ».

Итак, мой вопрос: что мне делать? Как мне настроить мои маршруты? Имеет ли значение тот факт, что мое корневое приложение не является приложением MVC?

Ответы [ 2 ]

1 голос
/ 31 августа 2009

Во-первых, вы не меняете названия маршрутов, они должны быть относительными.

Во-вторых, у вас, вероятно, возникнут проблемы с наследованием web.config (т. Е. Ваш web.config в приложении mvc наследует все от web.config в корне).

Вы можете остановить это наследование, но вам нужно будет изменить корневые приложения web.config, чтобы включить тег местоположения вокруг всего:

<configuration>
  <configSections>
    ... all your custom config sections here (if any) ...
  </configSections>
  <location path="." inheritInChildApplications="false">
    ... all your config stuff here (ie, system.web, connectionStrings) ...
  </location>
</configuration>

Это говорит о том, что эти настройки применяются только к пути ".", Точка будет обозначать текущее местоположение, а затем в коллекции attributeitInChildApplications "не наследуются эти настройки в дочерних приложениях".

Вы даже можете поместить вещи вне тега местоположения, которые хотите сделать доступными для дочерних приложений.


Редактировать: обратите внимание, что это может не решить ваши проблемы (или, по крайней мере, не все из них), некоторые могут быть из-за того, что вы сделали предположение, что приложение будет работать в корне (в основном, в отношении путей).

0 голосов
/ 31 августа 2009

Не должно иметь значения, что ваш корень не настроен как приложение MVC, но вам нужно убедиться, что каталог / bin /, по крайней мере, содержит сборки MVC, если их нет в GAC. Попробуйте использовать отладчик маршрутов Фила Хаака , чтобы увидеть, есть ли какие-либо проблемы с маршрутами. Это может дать нам больше информации, если не поможет решить проблему!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...