Я использую API Microsoft TFS, и одно из свойств на одном из интерфейсов было помечено как "Устаревшее", и оно дает мне указание использовать другое свойство. К сожалению, свойство, которое API хочет использовать, используется TFS2010, а не TFS2008.
Я попытался сделать это:
#pragma warning disable 0612, 0618
request.CommandLineArguments = arguments;
#pragma warning restore 0612, 0618
Но я все еще получаю сообщение об ошибке, которое CommandLineArguments устарело. Есть ли способ подавить это?
ИЗМЕНИТЬ
К сожалению, это не отображается как "Предупреждение как ошибка", на самом деле "Предупреждение об отключении" в моем проекте отключено. Вот экранная панель кода, а также список ошибок
ИЗМЕНИТЬ 2:
После использования ILSpy свойство CommandLineArguments выглядит так в API TFS2010:
[Obsolete("This property has been deprecated. Please remove all references. To pass command line arguments to MSBuild.exe, set the ProcessParameters property.", true)]
string CommandLineArguments
{
get;
set;
}
К сожалению, я не думаю, что есть способ сообщить компилятору игнорировать ошибку, вызываемую атрибутом Obsolete.
ИЗМЕНИТЬ 3 Поскольку @Peter Ritchie указывает, что это значение может быть установлено через отражение. Поскольку я думал об этой проблеме, хотя я предполагаю, что если Microsoft установит свойство, чтобы выбросить исключение, даже если вы установили его через отражение, я сомневаюсь, что значение будет ссылаться где угодно.