Если бы Ваш код говорит "интервал newVal=42", тогда Вы обоснованно ожидали бы, что newVal никогда не является неинициализированным. Но если Вы goto по этому оператору (который является тем, что Вы делаете) тогда это точно, что происходит - newVal, в объеме, но не был присвоен.
, Если, именно это Вы действительно означали происходить тогда, язык требует для создания его явным путем высказывания "интервала newVal; newVal = 42";. иначе можно ограничить объем newVal к единственному случаю, который более вероятен, что Вы хотели.
Это может разъяснить вещи, если Вы рассматриваете тот же пример, но с "интервалом константы newVal = 42";
Это еще один, хотя и не обязательно «лучший» способ:
Блок перехвата является типичнымОпределение текущей версии
Чтобы определить, какой клиент Oracle версия, которую вы установили на свой компьютер, запустите sql
*
plus для подключения к DW. В имена папок могут несколько отличаться в зависимости от на вашей настройке Oracle, но должно быть аналогичный. Чтобы запустить sql*
плюс выберитепуск> программы> Oracle> Oracle - OUDWclient> Приложение Разработка> sqlplus
. Введите свой DW имя пользователя, пароль и 'ordj' для имя хоста или имя службы. Эта должен подключить вас к DW через sqlplus. На этом этапе вы могли напишите свои собственные инструкции sql, чтобы вытащить информация из ДВ (если бы вы знали sql). Клиентская версия Oracle может быть определяется в первой строке - «SQL * Plus: выпуск 10.2.0.1.0».
IDisposable
использованием внутри конструктора; вы сохраняете право собственности на новый объект IDisposable
, пока он не будет возвращен (вы можете документировать это с помощью комментариев кода).
К сожалению, кодировщик по умолчанию «сохранить как jpeg» не предоставляет никаких средств контроля качества и выбирает ужасно низкое качество по умолчанию.
Однако вы также можете вручную выбрать кодировщик, а затем передать произвольные параметры:
ImageCodecInfo jpgInfo = ImageCodecInfo.GetImageEncoders()
.Where(codecInfo => codecInfo.MimeType == "image/jpeg").First();
using (EncoderParameters encParams = new EncoderParameters(1))
{
encParams.Param[0] = new EncoderParameter(Encoder.Quality, (long)quality);
//quality should be in the range [0..100]
image.Save(outputStream, jpgInfo, encParams);
}