2012-06-18 26 views
5

Paylaşılan Kullanıcı Erişimi (Ana Sayfa), arama yapma olanağı veren bir MVC uygulaması kullanıyorum. Siparişlerini Sipariş Numarası veya Fatura Numarası ile arayabilirler. Dolayısıyla, metin kutusuyla birlikte Paylaşılan Görünüm'ün iki seçenek düğmesi vardır. Kod buDönüş Farklı Görünümler MVC Denetleyicisinden

@using (Html.BeginForm("Track", "Tracking", FormMethod.Post)) 
     { 
      <div style="text-align: center"> 
       <textarea cols="20" id="txtNo" name="txtOrderNo" rows="2" ></textarea> 
      </div> 
      <div style="text-align: center"> 
       <input type="radio" name="optOrderNo" checked="checked" value="tracking" />Order No     <input type="radio" name="optRefNo" value="tracking" />Ref No 
      </div> 
      <div style="text-align: center"> 
       <input type="submit" value="Track" /> 
      </div> 
     } 

Yani o TrackingController ve İz Yöntemi gidip manzaranın dönersiniz biraz gibidir. Görünüm bir denetleyicinin yöntemleri ile ilişkilendirildiği için tek bir arama için iyi çalışır. İyi çalışıyor ama radyo düğmesi seçimine bağlı olarak diğer görünümü nasıl şartlı olarak iade edebildim.

Ne ben ile gelip Lütfen rehberlik bu

[HttpPost] 
    public ActionResult Track(FormCollection form) 
    { 
     string refNo = null; 
     if (form["optRefNo"] == null) 
     { 
      string OrderNo = form["txtOrderNo"]; 
      var manager = new TrackingManager(); 
      var a = manager.ConsignmentTracking(OrderNo); 
      var model = new TrackingModel(); 
      if (OrderNo != null) 
       model.SetModelForConsNo(a, consNo); 
      return View(model); 
     } 

     refNo = form["txtConsNo"]; 
     return TrackByRef(refNo); 
    } 

    public ActionResult TrackByRef(string refNo) 
    { 
     //what ever i want to do with reference no 
     return View(); 
    } 

olduğunu. Teşekkürler

cevap

15

View, ilk parametrenin bir dizgi olduğu bir aşırı yüklenmeye sahiptir. Bu, kullanmak istediğiniz görünümün (eylemin adıyla eşleşen bir görünüm) yerine, kullanmak istediğiniz adın (veya yolun) adıdır.

public ActionResult TrackByRef(string refNo) 
{ 
    //what ever i want to do with reference no 
    return View("Track"); 
    // or, if you want to supply a model to Track: 
    // return View("Track", myModel); 
} 
+0

+1, Beni 20 saniye yendiniz) –

İlgili konular