は、これは、Visual Studioで2010取得警告は、「タイプパラメータXを隠しインタフェースX」
私は一般的な方法で作業し、基本的に私のインテリセンスを失うと、このプロジェクトの作業を続けてから私を停止していますが発生しています。だから私はそれが動作するように期待される正確にどのような作品を削除
public abstract class DataRepository<T>
{
public virtual IEnumerable<T> RetrieveAll<U>(U parameter1)
{
throw new NotImplementedException();
}
public virtual bool Delete<U>(U parameter1)
{
throw new NotImplementedException();
}
}
:からこれが継承
public class SearchRepository : DataRepository<IAudit>
{
public override IEnumerable<IAudit> RetrieveAll<IAuditSearch>(IAuditSearch searchParameters)
{
// CODE GOES HERE
}
public override bool Delete<TIAudit>(IAudit audit)
{
// CODE GOES HERE
}
}
:
は、私は基本的に以下のクラスがあります。私は知性があり、それは正しくコンパイルされます。 RetrieveAllはIAuditSearchを使用して正しく動作しません。私がTIAuditSearchに変更した場合、私は「無効にする適切な方法はありません」と言います。
私が間違っていることがわかりませんが、間違いなく私には満足していません。
UPDATED:上のDeleteメソッドで上書きするように仮想を変更しました。それは間違いだった。
'抽象型 'の内部に実装されていない' virtuals'は正しいのですか?私はあなたが代わりに '抽象'キーワードを使用するべきだと思います – Tigran
その理由は、私はコードの一部を示したということです。要約には8-10のメソッドがあります。各リポジトリは、それらのうちのいくつかだけを上書きします。 – Cyfer13
あなたの回答はあなたの質問に役立ちますか?そうであれば、それを受け入れるべきです。 – Andy