Почему я не должен использовать/, оптимизируют переключатель для компиляции моего кода C#?

Почему вы используете StreamReader для чтения данных JSON?

вы можете использовать JObject для анализа вашего json и получения данных из него.

var json = @"{""data"":[""4482359"",""12526"",""5"",""5"","""",""Yes, that is right"",""1""]}";
var obj = JObject.Parse(json);

List<string> lst = (obj["data"]).ToObject<List<string>>();

var result = JsonConvert.SerializeObject(lst);
7
задан Boris Callens 23 January 2009 в 11:28
поделиться

3 ответа

Это идет на значение по умолчанию для сборок конечных версий (возможно, Вы изменили настройки для Сборок конечных версий?). Выключите его для создания отладки легче. Для кода выпуска включите его.

9
ответ дан 6 December 2019 в 10:03
поделиться

Чтобы ясно дать понять это, оптимизация делает подставляемые функции и устраняет некоторые переменные. При отладке оптимизированного кода Вы не получите столько же справки IDE, как обычно, так как часть кода на самом деле больше не существует. Таким образом для отладки, повернитесь если от (значения по умолчанию).

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

3
ответ дан 6 December 2019 в 10:03
поделиться

Оптимизация кода стала довольно хорошей в C#3 - это делает много умных тонких настроек производительности, которые изменяют Ваш код еще много в IL, чем Вы могли бы ожидать.

Некоторые инструменты путаницы (и некоторые другие инструменты IL как ILMerge) могут иногда повреждать блок с оптимизацией на. Чем больше инструментов IL Вы используете, тем более вероятно необходимо получить серьезные проблемы с оптимизацией.

Также как @Brian Rasmussen уже сказал (+1) - Вы хотите это прочь для отладки, на для выпусков.

7
ответ дан 6 December 2019 в 10:03
поделиться
Другие вопросы по тегам:

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