2009-04-28 39 views
34

theo mặc định động cơ ASP.NET MVC tìm kiếm các thư mục sau đây để Xem trang:ASP.NET MVC Làm cách nào để chỉ định thư mục nào các trang Xem nằm trong?

  • /Views/{} controller_name /{Action}.aspx
  • /Views/Shared /{Hành động } .aspx

Tuy nhiên tôi muốn đặt một số Xem trang web của tôi như thế này:

  • /Views/{Namespace}/{} controller_name /{Action}.aspx

Làm thế nào tôi có thể để cho cái nhìn động cơ cho việc này?

+0

xin lỗi vì rollback, nhưng nó thực sự cần để hiển thị như thế này: -) – Ropstah

+0

tôi đã sửa danh mục quá xin lỗi. –

Trả lời

7

Bạn phải tạo một lớp được thừa kế từ giao diện IViewEngine và đăng ký lớp này trong sự kiện Aplication_Start trong Global.asax.cs Kiểm tra link text này, nhưng có một số khác biệt với 1,0

+0

Đó là khá một chút, tôi sẽ bỏ qua tối nay ;-). Thx cho các thông tin cho đến nay .. – Ropstah

+2

Thực ra, tôi đã đọc nó một chút và tôi nhận thấy lớp VirtualPathProviderViewEngine. Đó là những gì tôi đang tìm kiếm. Cám ơn! – Ropstah

59

Bạn có thể trở lại xem đặt trong các thư mục con tùy chỉnh, từ hành động điều khiển bằng cách cho ra đường dẫn xem đầy đủ trong câu lệnh trả về,

ví dụ:

public ActionResult Create() 
{ 
    return View("~/Views/ProEnhance/Employee/Create.cshtml"); 
} 

đây,

ProEnhance - người dùng được xác định thư mục

nhân viên - điều khiển Tên

Tạo - Tên hành động

+1

có thể làm điều gì đó như thế này? 'View.defaultLocation = "(" ~/Views/ProEnhance/"); public ActionResult Tạo() { trở View();} ' – Muflix

+1

Bất kỳ nhà phát triển, những người có thể trả lời @Muflix? 'Câu hỏi của, Câu trả lời trên (câu trả lời của Ofigen) được đăng không trả lời đúng câu hỏi, tôi vẫn đang tìm kiếm câu hỏi này. –

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