Я использую Visual Studio 2010 и C # ASP.NET.Когда я запускаю свой проект с помощью клавиши F5, он запускает сервер разработки ASP.NET, и это сервер, который я использую для своей работы, а не IIS.
Проблема заключается в том, что я получаю сообщение «Ошибка сервера в/ application "ошибка необработанного исключения, на странице ошибки нет ни номера строки, ни имени исходного файла.Просто описание ошибки и трассировка стека.Например:
Server Error in '/' Application.
DataField must be specified. [or whatever error message]
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.InvalidOperationException: DataField must be specified.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[etc]
Я компилирую в режиме отладки.Мой PDB генерируется в каталоге BIN моего проекта.В свойствах моего проекта в разделе Web аутентификация NTLM отключена.В моем файле web.config у меня есть следующее:
<authentication mode="Forms">
[...]
<customErrors mode="Off"/>
[...]
<compilation debug="true" targetFramework="4.0">.
Кроме того, в свойствах моего проекта в разделе «Сборка» активна конфигурация «Отладка», а флажки констант DEBUG и TRACE включены.В разделе «Дополнительно» для «Внутренних отчетов об ошибках компилятора» установлено значение «Истина», а для «Отладочная информация» задано значение «Полная».
В учетной записи пользователя, под которой я работаю, включено право «Отладка программ» в политике безопасности своей группы.
Я исследовал этот вопрос здесь, в Переполнении стека и в других местах, но я не могу найти прямой ответ, который соответствует моей ситуации.Один из ответов, который я нашел, заключался в удалении параметра «impersonate = true» из web.config, который, по-видимому, применим к IIS, но я не использую IIS и не имею этого в своем конфигурационном файле.Я использую встроенный ASP.NET Development Server, который поставляется с VS 2010, вместо IIS.В другом ответе говорилось, что нужно настроить сервер символов и установить переменную _NT_SYMBOL_PATH env, но я не знаю, относится ли это к тому, что я делаю.
Это действительно сбивает с толку, потому что я использую настройки по умолчаниюи настройки для всего, и кажется, что это будет распространенной проблемой, с которой столкнется большинство разработчиков.Если все остальные не используют Publish и не занимаются разработкой через IIS.Между прочим, я еще не пробовал с IIS, чтобы увидеть, если я получаю номера строк, покаНо я хочу использовать встроенный сервер разработки ASP.NET - я ожидаю, что он будет по умолчанию отображать подробные сведения об отладке / трассировке исключений, и, возможно, даже интегрируется с VS 2010, чтобы разбить исключения и позволить мне пройти по коду.Но, может быть, я прошу слишком много.Кто-нибудь?
(Если вы ответите с предложенным решением, пожалуйста, сначала прочитайте детали моих настроек выше, чтобы вы могли увидеть, есть ли у меня уже настройки, которые вы предлагаете.)
Продолжение: Я пытался с IIS, и я получаю номера строк.Но это не решает проблему, потому что я хочу использовать облегченный сервер разработки.