Я сталкиваюсь с той же проблемой и получаю обратную связь от Microsoft:
К сожалению, эти SDK нельзя использовать с ADLS Gen2 на данный момент.
Однако я бы посоветовал следить за обновлениями Azure . Обновления Azure предоставляют информацию о важных обновлениях продукта Azure, дорожной карте и объявлениях.
blockquote>Надеюсь, это поможет вам.
Различие прибывает, если Вы случайно вводите =
вместо ==
:
if (null = object)
- Ошибка компилятора
if (object = null)
- Ошибка!
Ну, вот что-то, что я отчасти как... использую расширения:
public static class ObjectExtensions
{
public static bool IsNull(this object target)
{
return null == target;
}
}
Теперь, можно забыть об этом полностью:
if(item.IsNull())
В добрые старые времена компиляторы счастливо позволили бы Вам сделать присвоения в условных выражениях, ведя к неумышленным ошибкам:
if(a = false)
{
// I'll never execute
}
if(b = null)
{
// I'll never execute
}
b.Method(); // And now I'm null!
Таким образом, некоторые умные разработчики начали помещать свои константы сначала в их условные выражения:
if(false = a) // OOPS! Compiler error
{
// ..
}
if(null = b) // OOPS! Compiler error
{
// ..
}
Таким образом, они обучили себя избегать целого класса ошибок. Большинство современных компиляторов больше не будет позволять Вам совершить ту ошибку, но практика продолжается.
Существует еще одно преимущество для всегда помещения Ваших констант сначала:
if(myString != null && myString.Equals("OtherString"))
{
// ...
}
может (в.NET, Java и большинстве языков с основанным на объектах строковым типом) быть уменьшенным до:
if("OtherString".Equals(myString))
{
// ..
}
Логически, нет никакого различия.
С точки зрения проверки ошибок первое более желательно, потому что, если Вы отсутствуете, равняется знаку (=
), компилятор сообщит, что Вы не можете сделать присвоение на константу.
Никакое различие. (пустой указатель == объект), практика от C/C++, где "=" и используется в качестве оператора присваивания, и в качестве оператора сравнения.
Было слишком много ошибок когда, если (объект = пустой указатель) использовался.
На многих языках == оператор сравнения =, оператор присваивания.
Это очень легкий ввести =, когда Вы действительно имеете в виду ==.
Поэтому конвенция ввода постоянного == переменная предпочтена.
constant=variable не скомпилирует таким образом показ Вас, Вашей ошибки.
variable=constant скомпилирует и сделает неправильную вещь во времени выполнения.
Некоторые предпочитают if (null == object)
так, чтобы, если Вы случайно вводите =
вместо ==
, Вы получаете ошибку компиляции вместо присвоения.