Менеджер конфигурации только показывает Отладку

Как будто вы пытаетесь получить доступ к объекту, который является null. Рассмотрим ниже пример:

TypeA objA;

. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException, что имеет смысл.

См. Также этот пример:

String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
17
задан Stephane Rolland 30 January 2013 в 15:40
поделиться

2 ответа

веб-сайты ASP.NET не используют менеджер конфигурации, чтобы определить, включена ли отладочная информация в компиляцию. Необходимо установить его в web.config файл. Visual Studio никогда не будет изменять отладку на "ложь" для Вас automactially, насколько я знаю.

Находят этот раздел в Вашем web.config файл и изменяют его на "ложь":

<!--
    Set compilation debug="true" to insert debugging
    symbols into the compiled page. Because this
    affects performance, set this value to true only
    during development.
-->

<compilation debug="true">

Visual Studio спросит Вас, если Вы захотите измененный от лжи до истинного, если Вы выполняете свой веб-сайт в IDE, но к сожалению это не делает реверса для публикации (который кажется более важным для меня).

, Если у Вас есть несколько проектов в Вашем решении, и по крайней мере один из них поддерживает конфигурацию выпуска (такую как DLL) - это появится в конфигурации выпадающий список. Создание с Выпуском, выбранным все еще, не влияет на веб-сайт, как бы то ни было.

24
ответ дан 30 November 2019 в 13:13
поделиться

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

можно вернуть его путем воссоздания его или скопировать соответствующие строки с решения, которое Вы делаете с нуля реальными быстрый. Разность файла показывает следующее:

файл решения По умолчанию:

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
    Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.Build.0 = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Release|Any CPU.ActiveCfg = Release|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection

Решение после того, как я вручную удалил конфигурацию Выпуска:

GlobalSection(SolutionConfigurationPlatforms) = preSolution
    Debug|Any CPU = Debug|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
    {EDD50911-B94E-49A4-A08B-A2E91228A04B}.Debug|Any CPU.Build.0 = Debug|Any CPU
EndGlobalSection
0
ответ дан 30 November 2019 в 13:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: