10

Tôi đang học .NET MVC và một ứng dụng tôi đang xây dựng đã trở nên giống như mì spaghetti. Trong mã của tôi, tôi có nhiều hành động trong các bộ điều khiển khác nhau mà tự nhiên tất cả sản xuất các quan điểm khác nhau và một phần xem trước. Để làm cho vấn đề tồi tệ hơn, tôi có @ Html.Action lệnh mà thêm một lớp của sự nhầm lẫn. Một số điều này còn lại từ hành động giàn giáo mặc định.Công cụ để liệt kê các tuyến đường MVC - Visual Studio Express

Có công cụ nào tạo danh sách tất cả các tuyến đường có thể có trong trang web của tôi và các chế độ xem mà chúng quay lại không?

Tôi cũng muốn tìm tất cả các chế độ xem và hành động không được sử dụng mà không có chế độ xem và thường tái cấu trúc mọi thứ đúng cách. Một cái gì đó như thế này (xin vui lòng không bình luận về ví dụ cụ thể này):

Route    Views returned 
------------------------------------------ 
/User/Edit   /User/Edit.cshtml 
/Admin/User/Edit /User/Edit.cshtml 
... 

Điều đó tồn tại? Nó có thể được thực hiện với một mẫu .tt?

Hoặc có lẽ toàn bộ cách tiếp cận của tôi là sai ..!

+0

Bạn có thể muốn kiểm tra [RouteDebugger] (http://haacked.com/archive/2011/04/13 /routedebugger-2.aspx) – jrummell

+0

Theo như tôi thấy, không có đề xuất nào hiện đang ánh xạ TẤT CẢ các tuyến đường trong dự án của tôi theo như tôi biết. Họ yêu cầu bạn phải nhấn từng trang một cách thủ công để 'gỡ lỗi' chúng. – rwalter

+0

Tôi đã cập nhật câu trả lời của mình để giúp bạn tốt hơn một chút. Hy vọng nó sẽ giúp bạn trên con đường của bạn. –

Trả lời

7

Những có lẽ có thể giúp bạn trên con đường của bạn:

Tôi có không đã kiểm tra Trình hiển thị tuyến đường Mvc, nhưng có vẻ như nó có thể làm những gì bạn làm k.

Edit:

Có lẽ điều này làm việc tốt hơn cho bạn. Tuy nhiên, nó sẽ không hiển thị cho bạn số lượt xem được trả lại, ít nhất sẽ hiển thị tất cả bộ điều khiển và hành động:

  1. Thêm gói dự án vào gói dự án của bạn.
  2. Chuyển đến phương pháp bạn đăng ký tuyến đường.
  3. Sau routes.IgnoreRoute("{resource}.axd/{*pathInfo}");, thêm những dòng mã:

    routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 
    
    // If you don't have "HomeController", choose another controller you have. 
    // MvcCodeRouting will look for all controllers in the same namespace and sub-namespaces as the one specified here. 
    routes.MapCodeRoutes(typeof(HomeController), new CodeRoutingSettings 
    { 
        UseImplicitIdToken = true 
    }); 
    
    // Other, existing, routes here... 
    
  4. xây dựng và chạy ứng dụng.

  5. Đi tới http://yoururl.com/routes.axd để xem tất cả các tuyến đường đã tạo, chúng sẽ chứa tất cả các hành động.
  6. Nếu bạn đã cài đặt Route Debugger, bạn có thể thấy chúng ở đó để:

    Route Debugger screenshot

1

Có bạn có thể sử dụng Asp Net MVC MiniProfiler.

Dưới đây là một số liên kết tuyệt vời cho rằng

Miniprofiler Home

Scott Hanselman Blog

Sam Saffron Blog

Đây là một ảnh chụp màn hình của MiniProfiler:

enter image description here Hy vọng điều này sẽ giúp bạn.

+3

Bạn có thể giải thích cách sử dụng nó để liệt kê các tuyến đường không? Đó không phải là chính xác một tính năng mà tôi mong đợi trong một hồ sơ. – CodesInChaos

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