0

我有类似的东西:

class BackupList : List<Backup> {}

VS2010 为我生成的测试看起来有点像:

[TestMethod()]
[DeploymentItem("[...].exe")]
public void AddBackupNormal()
{
    SqlServer_Accessor.BackupList ls = new SqlServer_Accessor.BackupList("", "");
    SqlServer_Accessor.Backup bk = new SqlServer_Accessor.Backup();
    ls.Add(bk);
    Assert.IsTrue(ls.Count == 0); // won't compile
    List<SqlServer_Accessor.Backup> x = new List<SqlServer_Accessor.Backup>();
    Assert.IsTrue(x.Count == 1);  // compiles fine
}

但是,在上面, .Count 引用无法编译:

错误 1 ​​'xxx.SqlServer_Accessor.BackupList' 不包含 'Count' 的定义,并且找不到接受类型为 'xxx.SqlServer_Accessor.BackupList' 的第一个参数的扩展方法 'Count'(您是否缺少 using 指令或程序集参考?) C:[...]Tests\SqlServer_BackupListTest.cs

有趣的是,对原始类型的引用似乎包含一个 .Count 属性,正如我所期望的那样......所以问题是 _accessor 似乎正在转换为 List<> 以外的东西。

如何解决这个问题?

TIA-e!

4

1 回答 1

0

我的第一个猜测是你的测试类需要一个参考......

using System.Collections.Generic;

于 2013-06-03T14:32:12.797 回答