Исправлена ​​ли ошибка IsNullOrEmpty в .NET 3.0 или более поздней версии? - PullRequest
3 голосов
/ 09 января 2009

Кто-нибудь знает, исправлена ​​ли ошибка IsNullOrEmpty в версии 3.0 или новее? В настоящее время я столкнулся с ошибкой (NullReferenceException) в 2.0 и обнаружил документацию, в которой говорится, что она должна быть исправлена ​​в следующем выпуске, но нет однозначного ответа.

Ответы [ 4 ]

10 голосов
/ 09 января 2009

Я нашел немного информации по этому вопросу:

Эта ошибка была исправлена ​​в Служба Microsoft .NET Framework 2.0 Пакет 1 (SP1).

4 голосов
/ 09 января 2009

Работает с .NET 3.5SP1. Тестовая программа для тех, кто хочет ее попробовать (в основном из отчета об ошибке):

using System;

class Test
{
    static void Main(string[] args)
    {
      Console.WriteLine("starting");
      ShowBug(null);
      Console.WriteLine("finished");
      Console.ReadLine();
    }

    static void ShowBug(string x)
    {
        for (int j = 0; j < 10; j++)
        {
            if (String.IsNullOrEmpty(x))
            {
                //TODO:
            }
        }
    }
}

Скомпилировать с помощью / o + / debug- из командной строки.

1 голос
/ 09 января 2009

Microsoft сообщила об этой ошибке как исправленной на сайте Connect . Если вы все еще можете повторить проблему, я призываю вас повторно представить регрессию.

0 голосов
/ 09 января 2009

Я думаю, это зависит от того, где вы столкнулись с этой ошибкой. Если вы столкнулись с этим, например, в адаптере таблицы, то это потому, что сами свойства настроены так, чтобы возвращать это исключение, когда значение равно нулю.

...