-
26-06-2012, 05:30 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
hiển thị sản phẩm và tin tức trên cùng 1 trang cshtml mvc3
minh đang làm web bằng mô hình mvc3 bị vướng ở chỗ không biết hiển thị sản phẩm và tin tức trên cùng 1 trang cshtml vì bình thường thi mỗi trang(ví dụ index)chỉ hiển thị theo 1 actionresult của controler(ví dụ actionresult ListNews).có cách nào để hiện thị cả sản phẩm và tin tức cùng trên 1 trang không pro nào giúp mình với.
View more random threads:
- Tạo 1 tầng Cache cho DB SqlServer như thế nào?
- Đưa web chạy csdl 2008 dùng linq đưa lên somme.com, lỗi xin giúp
- Khôgn load lại trang khi nhấn nút nhấn nút trong asp.net
- Cách cắt bớt ký tự trong label C# như thế nào?
- tại sao không thể kết nối sql 2005 với visual studio 2005 được
- RadiobutList trong Edit Mode Formview lỗi: specified cast is not valid
- Tạo address ảo trong asp.net như thế nào
- Cách check session cho toàn page trong ASP.NET MVC 3 như thế nào?
- ModelState.Isvalid luôn trong MVC3 luôn trả về true?
- hiện thông tin đăng nhập của user
-
27-06-2012, 09:01 AM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
ý mình là là làm sao 1 view(razor cshtml)tham chiếu tới nhiều controler được.vì 1 trang ví dụ news.cshtml thì chỉ tham chiếu tới 1 actionresult news trong controler thôi như vậy mình không thể hiieenr thị tin tức và sản phẩm trên cùng 1 trang news được.
-
27-06-2012, 05:38 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Razor view Engine hỗ trợ nhúng các thành phần từ 1 file cshtml này đến 1hiều file khác.Các tính năng Helpers và Section có thể giải quyết vấn đề của bạn.
-
19-08-2012, 03:42 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi nguyen_hung5716
không thì tạo cáo model trong đó có nhiều list<object> sang bên view thì sử lý.
chắc mới học mvc3 hả.
-
21-08-2012, 04:43 PM #5Junior Member
- Ngày tham gia
- Sep 2015
- Đang ở
- hà nội
- Bài viết
- 0
Gửi bởi nguyen_hung5716
Ví dụ:
// view model
// giả sử bạn đã có 2 class Product và NewsItem để mô tả sản phẩm và tin tức
// vd: Product có id, name, price...
public class DataModel{
public DataModel(){
NewsItems = new List<NewsItem>();
Products = new List<Product>();
}
public IList<NewsItem> NewsItems {get;set;}
public IList<Product> Products {get;set;}
}
// controller
public class HomeController : IController{
public ActionResult Index(){
var model = new DataModel();
// cho dữ liệu vào
// model.NewsItems = ...;
// model.Products = ....;
return View(model);
}
}
// view
@model DataModel
@if(Model.NewsItems.Count > 0) {
foreach(var newsItem in Model.NewsItems) {
// xuat du liệu ra
}
}
@if(Model.Products.Count > 0) {
foreach(var product in Model.Products) {
// xuat du liệu ra
}
}
2. Bạn tạo 2 action mỗi action trả về partial view để hiển thị sản phẩm và tin tức. Rồi dùng @Html.Action() helper method gọi.
Ví dụ:
// news controller
public class NewsController : IController{
public ActionResult AllNews(){
// ví dụ view model là List cho đơn giản nha
List<NewsItem> newsItems = new List<NewsItem>();
// cho dữ liệu vào
// newsItems = ...;
return PartialView("News",newsItems);
}
}
// News partial view
@model List<NewsItem>
@if(Model.Count > 0) {
foreach(var newsItem in Model) {
// xuat du liệu ra
}
}
// product controller
public class ProductController : IController{
public ActionResult AllProducts(){
// ví dụ view model là List cho đơn giản nha
List<Product> products= new List<Product>();
// cho dữ liệu vào
// products= ...;
return PartialView("Product",products);
}
}
// Product partial view
@model List<Product>
@if(Model.Count > 0) {
foreach(var product in Model) {
// xuat du liệu ra
}
}
// home controller
public class HomeController : IController{
public ActionResult Index(){
return View();
}
}
// index view
@Html.Action("AllNews","News")
@Html.Action("AllProducts","Product")
Chúc thành công!
Pallet nhựa Long An đã trở thành một trong những lựa chọn phổ biến cho nhu cầu vận chuyển và lưu trữ hàng hóa trong nhiều ngành công nghiệp. Với đặc tính nhẹ nhàng, chắc chắn và dễ vận chuyển, các...
Thanh lý pallet nhựa Long An giá rẻ