2013-07-16 23 views
7

Trang Trợ giúp của ASP.Net Web Api dường như tự động xác định xem một tham số có trong Yêu cầu Uri hoặc Nội dung hay không. Làm thế nào tôi có thể ghi lại các tham số tùy chọn là các tham số QueryString?Làm cách nào để ghi lại tham số QueryString tùy chọn trong các Trang trợ giúp ASP.NET WebApi?

Ví dụ tôi có thể có một Url RESTful như

[GET] api/Books?relatedToBookId=xx 

đâu "relatedToBookId" là một tham số chuỗi truy vấn tùy chọn.

Thông thường các thông số mà FromUri hoặc FromBody được đưa vào các ý kiến ​​như

<param name="variableName">blah blah</param> 

Trả lời

8

Bạn có thể làm như sau và tùy chọn thông tin tham số chuỗi truy vấn của bạn sẽ hiển thị trong helppage.

Trong mã bên dưới relatedToBookId là thông số tùy chọn đến từ Chuỗi truy vấn.

/// <summary> 
    /// Gets list of books 
    /// </summary> 
    /// <param name="relatedToBookId">Your description here</param> 
    /// <returns>returns list of books</returns> 
    public IEnumerable<Book> GetBooks(int? relatedToBookId = null) 

Ngoài ra, nếu bạn muốn đề cập về tham số này là tùy chọn, bạn có thể làm như sau:

  • Chuyển đến tập tin cài đặt (khu vực/helppage/Views/Trợ giúp/DisplayTemplates/Parameters.cshtml)

  • cập nhật các điều kiện liên quan đến case ApiParameterSource.FromUri như sau:

    case ApiParameterSource.FromUri: <p>Define this parameter in the request <b>URI</b>.</p> if(parameter.ParameterDescriptor.IsOptional) { <p>This parameter is <b>optional</b>.</p> } break;

+0

Cảm ơn bạn, Kiran! Có cách nào để có hai trang trợ giúp riêng biệt không: ví dụ: một cho "api/Sách" và một cho "api/Books? relatedToBookId = xx"? – mayabelle

Các vấn đề liên quan