重复: Why are C# collection-properties not flagged as obsolete when calling properties on them?
我刚刚使用Visual Studio 2008将.NET 1.1项目迁移到.NET 2.0。我知道项目中有对过时方法的引用。
但Visual Studio在构建后不会显示“过时”的警告。构建成功并且仅显示来自成员的3个警告,这些成员被分配了从未使用过的值。当我删除这些成员时,根本没有警告。
我需要这些“已经过时的”-WARNINGS
警告级别为4(最大),警告已启用。
只有一个样本:
protected internal DataConnector()
{
_connectionString = ConfigurationSettings.AppSettings["ProductConnectionString"];
}
应该导致“过时”警告的所有引用都是.NET Framework类的成员。
答案 0 :(得分:0)
调用过时方法的代码本身是否已标记为过时?
答案 1 :(得分:0)
这里只是在黑暗中拍摄,但是在您正在参考的项目中使用过时的成员,并且当您正在构建它时实际上并没有重建该项目?如果这是可能的话,我会尝试手动构建正在进行使用的项目,或者只是重建整个解决方案。
答案 2 :(得分:0)
确保您正在对项目进行完整构建,而不仅仅是增量构建。
答案 3 :(得分:0)
Jeff Yates是对的,这与Why are C# collection-properties not flagged as obsolete when calling properties on them?
重复这是此处报告的C#3.5编译器中的错误: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=417159
我检查过:将csc.exe命令行从输出窗口复制到cmd-console。当我将目录更改为.NET 2.0目录(使用C#2.0编译器)时,它会显示警告。 Microsoft知道这个错误并在C#4.0中修复它,但不会在3.5版本中修复它。