1

私はいくつかのefエンティティクラスを持っています(最初に生成されたデータベース)。私は EF 3.5 の使用に制限されています リポジトリ インターフェイスから共通の型を返す必要があります - 部分的なエンティティ クラスで拡張されたカスタム インターフェイスを使用しようとしましたが、機能しませんでした -

私のコードの一部:

リポジトリ インターフェイス:

interface IRepository
{
     List<string> GetColumnNames();


     IQueryable<EntityObject> GetAll();//what common type/interface can I return here?
}

リポジトリクラス: 私はこれらのいくつかを持っています

class CatalogItemRepository:IRepository
{
    private string repositoryName="CatalogItem";

    public List<string> GetColumnNames()
    {
       //implementation
    }
    public IQueryable<CatalogItem> GetAll()
    {
       //implementation
    }

}

エンティティ クラス

4

1 に答える 1

2

汎用リポジトリ パターンはどうですか?

public interface IRepository<T>
{
    List<string> GetColumnNames();

    IQueryable<T> GetAll();
}

public class CatalogItemRepository : IRepository<CatalogItem>
{
    private string repositoryName="CatalogItem";

    public List<string> GetColumnNames()
    {
       //implementation
    }

    public IQueryable<CatalogItem> GetAll()
    {
       //implementation
    }
}
于 2013-07-10T04:57:24.113 に答える