注意:我已经检查了 msdn,它没有解决我的实际问题,见下文。
我正在尝试在我的一个类中的(显然已过时的)构造函数上使用过时的属性。这是场景:
我希望能够强制开发人员更新到新的构造函数,而不影响已经存在和部署的代码。这样我就可以很好地将我的代码部署到生产环境中,但是从开发人员的角度来看,每当他们进入他们的代码时,而不是仅仅得到一个我确信他们会忽略的“警告”,我希望他们得到一个编译错误,因为现状不再正常。
所以我的问题是,这只会影响开发人员,还是所有调用应用程序,还是我错了?
示例代码:
public class MyClass
{
private string _userID; //new code
[Obsolete("This constructor is obsolete, please use other constructor.", true)]
public MyClass()
{
_userID = ""; //defaulting to empty string for all those using this constructor
}
public MyClass(string userID)
{
_userID = userID; //this is why they need to use this constructor
}
}
任何和所有的帮助将不胜感激,在此先感谢!