Eski bir yöntemi aşamalı olarak kaldırmaya ihtiyacım var. Bu [Obsolete]özelliğin farkındayım . Microsoft'un bunu yapmak için önerilen en iyi uygulama kılavuzu var mı?
İşte benim mevcut planım:
C. Yeni bir montaj oluşturmak istemiyorum çünkü geliştiriciler projelerine yeni bir referans eklemek zorunda kalacaklar ve bunu yapmaları gerekiyorsa patronumdan ve iş arkadaşlarımdan çok fazla keder almayı umuyorum. Ayrıca, birden fazla montaj sürümü bulundurmuyoruz. Sadece en son sürümü kullanıyoruz. Bu uygulamanın değiştirilmesi, büyük bir sorun olan dağıtım sürecimizi değiştirmeyi gerektirecektir (insanlara FinalBuilder yerine TFS ile nasıl şeyler yapacaklarını öğretmek ve FinalBuilder'den vazgeçmelerini sağlamak)
B. Eski yöntemi kullanılmıyor olarak işaretleyin.
C. Uygulama değiştiği için (yöntem imzası değil), bir aşırı yükleme oluşturmak yerine yöntemi yeniden adlandırmam gerekiyor. Bu nedenle, kullanıcıları uygun yöntemden haberdar etmek için [Obsolete]özelliğe bir mesaj eklemeyi planlıyorum . Bu bölüm beni rahatsız ediyor, çünkü yaptığım tek değişiklik yöntemi bağlantı dizesinden ayırmak. Ancak, yeni bir meclis eklemediğim için, bunun etrafında bir yol göremiyorum.
Sonuç:
[Obsolete("Please don't use this anymore because it does not implement IMyDbProvider. Use XXX instead.")];
/// <summary>
///
/// </summary>
/// <param name="settingName"></param>
/// <returns></returns>
public static Dictionary<string, Setting> ReadSettings(string settingName)
{
return ReadSettings(settingName, SomeGeneralClass.ConnectionString);
}
public Dictionary<string, Setting> ReadSettings2(string settingName)
{
return ReadSettings(settingName);// IMyDbProvider.ConnectionString private member added to class. Probably have to make this an instance method.
}