Из документации о ключевом слове as :
Это эквивалентно следующему выражению, за исключением того, что выражение вычисляется только один раз.
выражениетип ?(type) выражение: (type) null
Ссылка для - это use также заявляет, что она работает со ссылочными типами, однако вы также можете делать такие вещи:
int? temp = null;
if (temp is int?)
{
// Do something
}
Я предполагаю, что это просто неточность в справочной документации в том смысле, что тип должен быть обнуляемым (т.е. обнуляемый тип или ссылочный тип) вместо просто ссылочного типа.