私は次のようなものを持っています:
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<> 以外のものにキャストしているように見えることです。
これにどのようにアプローチしますか?
ティア~え!