2009-08-26 28 views
108

Làm thế nào để bạn bắt đầu gỡ lỗi ứng dụng tại gốc ứng dụng? Ví dụ: http://localhost:49742/Làm cách nào để thiết lập trang khởi động để gỡ lỗi trong ứng dụng ASP.NET MVC?

Tôi luôn nhận được một trang mà không tồn tại, chẳng hạn như: http://localhost:49742/Views/Home/About.aspx

Lưu ý rằng nó sẽ là OK để bắt đầu http://localhost:49742/Views/Home/About

+0

liên quan: http://stackoverflow.com/questions/2821796/visual-studio-asp-net-mvc-undo-set-as-start-page-action – JNF

Trả lời

178

Đi đến thuộc tính của dự án của bạn và đặt thuộc tính trang bắt đầu.

  1. Đến Properties của dự án
  2. Chuyển đến Web tab
  3. Chọn cụ trang nút đài phát thanh
  4. Gõ vào url mong muốn trong cụ trang hộp văn bản
+1

@ Mark- đây là một liên kết tốt mô tả quy trình chi tiết hơn- http://stephenwalther.com/blog/archive/2008/07/10/asp-net-mvc-tip-17-how-to-run-an-asp-net- mvc-application.aspx. Tôi đã nói điều đó trong câu trả lời của bạn. – RichardOD

+19

+1 Đảm bảo ** nhập nó vào ** ở bước 4. Chọn bằng nút [...] sẽ tạo một URL không có thật: D –

+10

Nếu bạn chỉ đang thử nghiệm và làm việc với mẫu dự án MVC mặc định trong VS. NET 2010, chỉ * xóa * mọi giá trị cho trang bắt đầu và sau đó gỡ lỗi dự án của bạn. Điều này sẽ đưa bạn đến chính "Chào mừng bạn đến với ASP.NET MVC!" trang. – atconway

1

Nếu bạn muốn bắt đầu từ "root ứng dụng" khi bạn mô tả nhấp chuột phải vào trang Default.aspx ở cấp cao nhất và chọn đặt làm trang bắt đầu. Nhấn F5 và bạn đã hoàn tất.

Nếu bạn muốn bắt đầu ở một hành động điều khiển khác, hãy xem Câu trả lời của Mark.

+0

Điều này có hiệu quả với MVC không? Đối với tôi, nó cố gắng khởi động trang ASPX và không định tuyến. – Robaticus

0

Xem lại trang này và tôi có thêm thông tin để chia sẻ với người khác.

môi trường gỡ lỗi (sử dụng Visual Studio)

1a) liên kết Stephen Walter để thiết lập trang khởi động trên MVC sử dụng các tính chất của dự án là chỉ áp dụng khi bạn đang gỡ lỗi ứng dụng MVC của bạn.

1b) Nhấp chuột phải vào trang .aspx trong Solution Explorer và chọn "Đặt làm trang bắt đầu" hoạt động giống nhau.

Lưu ý: trong cả hai trường hợp trên, cài đặt trang khởi động chỉ được công nhận bởi Visual Studio Development Server của bạn. Nó không được công nhận bởi máy chủ được triển khai của bạn.

môi trường triển khai

2a) Để thiết lập trang khởi động, giả định rằng bạn đã không thay đổi bất kỳ tuyến đường mặc định, thay đổi nội dung của /Views/Home/Index.aspx để làm một "Server. Chuyển "hoặc" Response.Redirect "đến trang bạn muốn.

2b) Thay đổi định tuyến mặc định của bạn trong global.asax.cs thành trang bạn muốn.

Có bất kỳ tùy chọn nào khác mà người đọc biết không? Điều nào ở trên (bao gồm tùy chọn của riêng bạn) sẽ là giải pháp ưa thích của bạn (và vui lòng chia sẻ với chúng tôi lý do)?

18

Mặc dù bạn có thể có trang mặc định trong dự án MVC, việc triển khai thông thường hơn cho chế độ xem mặc định sẽ là sử dụng bộ điều khiển mặc định, được đặt trong global.asax, thông qua 'RegisterRoutes (...)' phương pháp. Ví dụ nếu bạn muốn điều khiển Home Public \ của bạn sẽ được tuyến đường mặc định của bạn/xem, mã sẽ là:

public static void RegisterRoutes(RouteCollection routes) 
    { 
     routes.IgnoreRoute("{resource}.axd/{*pathInfo}"); 

     routes.MapRoute(
      "Default", // Route name 
      "{controller}/{action}/{id}", // URL with parameters 
      new { controller = "Public", action = "Home", id = UrlParameter.Optional } // Parameter defaults 
     ); 

    } 

Đối với điều này là chức năng, bạn được yêu cầu phải có có một bộ Start Page trong dự án.

5

Chọn một trang cụ thể từ thuộc tính Project không giải quyết được sự cố của tôi.

Trong MVC 4 mở App_Start/RouteConfig.cs

Ví dụ, nếu bạn muốn thay đổi trang khởi động để Đăng nhập:

routes.MapRoute(
     "Default", // Route name 
     "",  // URL with parameters 
     new { controller = "Account", action = "Login"} // Parameter defaults 
    ); 
9

này làm việc cho tôi theo cụ trang cho MVC:

/Home/Index 

Cập nhật: Hiện tại, tôi chỉ sử dụng dấu gạch chéo chuyển tiếp trong hộp văn bản "Trang cụ thể" và đưa tôi đến trang chủ như được xác định trong định tuyến:

/ 
+0

Câu trả lời đơn giản. Nhưng hãy cẩn thận - nếu bạn đã nhập một cái gì đó tương tự như URL bắt đầu, bạn sẽ vẫn nhận được thông báo URL không hợp lệ (ngay cả khi điều này hiện không được chọn). Vì vậy, hãy chọn Bắt đầu URL, xóa văn bản trong đó, THEN đặt thuộc tính Trang cụ thể cho đường dẫn tương đối như trên. –

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