0

私は 2 つのコントローラーを手に入れました。ProjectController と DocumentController。1 つのプロジェクトに複数のドキュメントを含めることができます。

projectid でドキュメントを取得したい場合、REST を使用してどこでどのように行う必要がありますか? (一般に、RESTが関連データをどのように処理するかはわかりません)

編集: MVC Web API が見つかりました。探しているサブアイテムを取得してください。

イヴァル

4

1 に答える 1

1

これは DocumentController で行う必要があると思います。以下は例です

public class DocumentController : ApiController {

    public IQueryable<Document> GetDocs() 
    {

        //get db context 

            return db.documents;

    }

    public ICollection<Document> Get(int id)
    {
        return db.documents.where(d = d.ProjectId == id);

    }

}

IQuerable バージョンは、odata フィルター クエリを使用してクエリできます。以下のように:

http://server:port/api/Document/getdocs?$filter=ProjectId eq ‘1'
http://server:port/api/Document/getdocs?$filter=DocumentId eq ‘1001'

(このルートを登録するには MapHttpRoute を変更する必要があります)

get version (2 番目の関数) は、プロジェクト ID に基づいてコレクションを返すだけです。

于 2012-05-24T18:00:41.033 に答える