Почему AppDomainSetup. ShadowCopyFiles строка?

Из документации:

Строка, содержащая строку, оценивает "верный", чтобы указать, что тень, копирующая, включена; или "ложь", чтобы указать, что тень, копирующая, выключена.

И его этот путь с тех пор 1.1. Кто-либо может пролить какой-либо свет?

Я reflector'd метод считывания и метод set в придачу:

public string ShadowCopyFiles
{
    get
    {
        return this.Value[8];
    }
    set
    {
        if ((value != null) && (string.Compare(value, "true", StringComparison.OrdinalIgnoreCase) == 0))
        {
            this.Value[8] = value;
        }
        else
        {
            this.Value[8] = null;
        }
    }
}

//The referenced Value property...

internal string[] Value
{
    get
    {
        if (this._Entries == null)
        {
            this._Entries = new string[0x10];
        }
        return this._Entries;
    }
}

private string[] _Entries; 

Таким образом, возможно, Value массив порождает более легкого конструктора копии или что-то?

14
задан BartoszKP 20 January 2016 в 14:08
поделиться

1 ответ

Недостаток кофеина. Некоторые вещи не предназначены для понимания.

Очевидно, это ошибка первой версии .NET, которая не исправлена, потому что это может нарушить «устаревший» код.

Черт возьми, я только что нашел это:

Спасибо за ваши отзывы о .NET Framework! Мы согласны с тем, что это недосмотр и что тип свойства должен быть логическим. Однако довольно сложно (если не невозможно) внести это изменение в обратно совместимую версию (например, Orcas), потому что мы нарушим код любого клиента, полагаясь на сравнения строк. Так что, к сожалению, мы должны взвесить риск нарушения совместимости и преимущества чистоты API ... и когда дело доходит до наилучшей поддержки нашей клиентской базы, первое обычно выигрывает. Мы будем отслеживать это внутренне, поскольку это хорошая вещь, которую нужно улучшить, и мы продолжим учитывать это в будущих выпусках.

Отсюда здесь

13
ответ дан 1 December 2019 в 14:32
поделиться
Другие вопросы по тегам:

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