Моё рабочее приложение MVC3 Razor по непонятным причинам перестало работать :-( IIS 7 - PullRequest
0 голосов
/ 25 июля 2011

В моем решении есть следующие проекты.

  • MyWebApplication.Data -> Здесь я взаимодействую с моим хранилищем данных
  • MyWebApplication.Services -> Здесь я взаимодействую с уровнем данных
  • MyWebApplication.Web -> Пользовательский интерфейс, который опирается на сервисный уровень
  • MyWebApplication.Tests -> Проект модульного тестирования

В течение МЕСЯЦЕВ у меня не было проблем с IIS в моей локальной среде разработчиков. Готов к долгим выходным дням программирования, но весь день я получал 500 ошибок сервера, когда просто пытался разрешить домашнюю страницу. До того, как я ложился спать, все было хорошо, и целый день после этого я даже не мог загрузить домашний / индексный просмотр.

После просмотра журналов постоянно говорится, что MyWebApplication.Data.System (класс, который я создал с именем System ()) не включает в себя Web. Но не где в коде это правда. Затем я получаю еще одну ошибку несоответствия файлов в каталоге Temp.

Шаги, которые я предпринял:

  1. Удалил все временные файлы
  2. Создал новый репозиторий в IIS и указал там URL, не повезло
  3. Очищенный раствор
  4. Удалены все папки бен, которые были восстановлены ... Не повезло

ПОЖАЛУЙСТА, ПОМОГИТЕ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Ответы [ 2 ]

1 голос
/ 25 июля 2011

Без подробностей сообщений об ошибках одной из стратегий может быть создание нового проекта MVC и копирование / вставка файлов в него. Несколько других распространенных причин:

  • Вы ссылаетесь на какие-нибудь 64-битные библиотеки, но компилируете проект как 32-битный (или наоборот)? Попробуйте изменить «разрядность» вашего приложения.
  • Если ваше приложение является 32-разрядным и работает на 64-разрядном сервере, необходимо включить запуск 32-разрядных приложений в IIS. Смотри http://exhibita.com/blog/post/2010/03/30/IIS-75-on-x64-with-32bit-applications.aspx
  • Если ничего не помогло, пожалуйста, напишите точные сообщения об ошибках. Если все, что он говорит, - «HTTP 500: Внутренняя ошибка сервера», вы должны включить вывод отладки или запустить свое приложение с самого сервера (фактически используя веб-браузер на сервере), который сообщит IIS, что «безопасно» отображать полную отладку Информация. Сообщения об отладке на самом деле были довольно полезны в моем опыте.
0 голосов
/ 26 июля 2011

Разобрался.В проекте

  • MyWebApplication.Web в Shared / Site.Master я добавил импортированную ссылку на свой уровень данных.(т. е. <% @ Import Namespace = "MyWebApplication.Data"%>

  • Я решил удалить статическую ссылку на мой класс ShoppingCart в слое данных и просто создал ActionResult для возвратато же самое и в MasterPage (который в настоящее время содержит javsscript, позволяющий пользователю заглянуть в свою корзину из любой точки сайта без перенаправления на конкретную страницу) использовал Html.RenderAction () и только что возвратил Content (shoppingCartString).

Думаю, я узнал, что на странице Site.Master она выполняется не так, как любая другая страница в приложении MVC. Я могу сказать это положительно, потому что на других страницах я делаю точно так же, как и я.попытался сделать здесь без каких-либо проблем. Может быть, это процесс сборки?

В любом случае, проблема решена, и, надеюсь, это может помочь кому-то еще.

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