ile

2010-11-21 21 views
1

asp.net-4.0 Bunu yapan:ile

slideshow.aspx 
<div class="wrapCarousel"> 
    <div class="Carousel"> 
     <% foreach(var image in Images) { %> 
     <div class="placeImages"> 
     <img width="150px" height="150px" src="../Img/<%=image.TnImg%>" alt="<%=image.Name%>" /> 
     <div class="imageText"> 
     <%=image.Name%> 
     </div> 
     </div> 
     <% } %> 
    </div> 

Sonra Görüntüler bu slideshow.aspx.cs gibi kodda idi:

public class Image 
    { 
     public string TnImg { get; set; } 
     public string Name { get; set; } 
     public string City { get; set; } 
     public string RefPlace { get; set; } 
     public string RefInfo { get; set; } 
     public string RefInfoDynamic { get; set; } 

     public Image(string TnImg, string Name, string City, string RefPlace, string RefInfo, string RefInfoDynamic) 
     { 
      this.TnImg = TnImg; 
      this.Name = Name; 
      this.City = City; 
      this.RefPlace = RefPlace; 
      this.RefInfo = RefInfo; 
      this.RefInfoDynamic = RefInfoDynamic; 
     } 
    } 

    Images.Add(new Image("", "", "", "", "", ""); 

Şimdi asp.net-MVC2 ile herhangi bir kodum yok, bu yüzden daha önce olduğu gibi görüntülere erişemiyorum ve bunun yerine .aspx dosyasına iletmesi gerekiyor.

Bu nasıl yapılır?

Teşekkür M

cevap

5

Sen kesinlikle yazılı görünümü kullanmak ve kontrol cihazından View'a Modeli geçerdi.

Bazı ayrıntıları here bulabilirsiniz.

Sonra böyle bir şey kullanmak

...

<% foreach(var image in Model.Images) { %> 

    <div><%= image.Name %></div> 

<% } %> 

Sizin kontrolör aşağıda, bazı dış kaynaktan resimlerin listesini alabilirsiniz nereye böyle bir şey olmazdı. Sadece

return View (imageViewModel); 

aşağıda çağrısı ile olsa açık ve net olması ve dahi (işlemek için görünümün adını belirtmek için tercih görünümünü oluşturmak için aşağıdaki kullanabilirsiniz Yukarıdaki kodda

public ActionResult Index() 
{ 
    ImageViewModel imageViewModel = new ImageViewModel(); 
    imageViewModel.Images = _imageRepository.GetImages(); 

    return View ("Index", imageViewModel);  

} 

mevcut kontrolör eylemin aynı addır olsa) ben ImageViewModel (ne bu durumda Yani

return View ("Index", imageViewModel); 
+0

) daha iyi okur düşünüyorum) ve foreach Model.imageViewModel bu "foreach (var görüntü gibi olmalı " sonra? – Mikael

+0

Görünümünüzü ImageViewModel türü olarak güçlü bir şekilde yazarsanız ve bu tür bir özellik Images'e sahipseniz, View'teki verilerinize Model.Images ile erişebilirsiniz. – Matt

+0

'ImageViewModel',' Images' özelliği olan bir sınıftır. Görünümde, model sınıfının geçirilen örneğine "Model" olarak başvurursunuz. – svick

İlgili konular