2014-12-03 22 views
5

Tôi muốn bật Định tuyến Thuộc tính cho API Web vì có vẻ như nó sẽ giúp định tuyến dễ xác định hơn. Ví dụ ở đây: http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2 cho thấy làm thế nào nó được thực hiện trong WebApiConfig.cs file:Bật định tuyến thuộc tính api web trong global.asax

using System.Web.Http; 

namespace WebApplication 
{ 
    public static class WebApiConfig 
    { 
     public static void Register(HttpConfiguration config) 
     { 
      // Web API routes 
      config.MapHttpAttributeRoutes(); 

      // Other Web API configuration not shown. 
     } 
    } 
} 

Tuy nhiên, dự án của tôi là một dự án hình thức web cũ, ban đầu bắt đầu trong Net 2.0 (nó hiện nay 4.5 sau nhiều nâng cấp so với năm). Tôi không có một tập tin WebApiConfig.cs và thay vào đó các tuyến đường hiện tại của tôi được định nghĩa trực tiếp trong global.asax phương pháp Application_Start sử dụng:

RouteTable.Routes.MapHttpRoute(...) 

bất cứ ai có thể giải thích là cách tốt nhất để cho phép thuộc tính định tuyến có trụ sở tại tình trạng này? Cảm ơn

+0

đọc liên kết bạn đã đăng trong "Lưu ý: Di chuyển từ API Web 1" – Rhumborl

+0

@rhumborl Cảm ơn bạn đã đề xuất. Điều thú vị là, tôi không có dòng nó đề cập đến 'WebApiConfig.Register (GlobalConfiguration.Configuration);' trong global.asax – Kate

+0

Wow, downvotes? Đây có phải là một câu hỏi tồi không? Ai đó có thể cho tôi biết tại sao? – Kate

Trả lời

10

Bạn chỉ có thể thực hiện GlobalConfiguration.Configuration.MapHttpAttributeRoutes(); trong tệp Global.asax của mình.

GlobalConfiguration.Configuration đối tượng được truyền cho WebApiConfig tập tin, vì vậy bạn có thể sử dụng lớp này để cấu hình tất cả các bạn cần trong Global.asax

+0

Tuyệt vời, cảm ơn vì điều đó! – Kate

3

Bạn nên đặt những 2 dây chuyền trước khi định nghĩa con đường của bạn và nó sẽ làm việc vui vẻ

GlobalConfiguration.Configuration.MapHttpAttributeRoutes(); 
    GlobalConfiguration.Configuration.EnsureInitialized(); 

Chúc mừng

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