2016-04-13 29 views
-1

ASP.NET MVC uygulamasında yeniyim ve model verilerini güncelleme konusunda sorun yaşıyorum ve daha sonra görüntüyü görüntülüyor.Görünümdeki Verileri Görüntüle Model Verileri Görüntüle

Şu anda model olarak kullandığım bir MortgageCalculator sınıfım var. denetleyicisi için

public double loan_amount { get; set; } 
    public double interest { get; set; } 
    public int loan_duration { get; set; } 
    public int payments_year { get; set; } 

Kod geçerli: Bence için

[httpGet] 
    public ActionResult M_Calculator() 
    { 
     var mortgageCalculator = new MortgageCalculator(); 
     return View(mortgageCalculator); 
    } 
    [HttpPost] 
    public ActionResult M_Calculator(MortgageCalculator mortgageCalculator) 
    {  
     UpdateModel(mortgageCalculator); 
     return RedirectToAction("Results"); 
    } 

    public ActionResult Results (MortgageCalculator mortgageCalculator) 
    { 
     return View(mortgageCalculator); 
    } 

Kod geçerli:

@using (Html.BeginForm()) 
{ 
<fieldset> 
    <legend>Mortgage Calculator</legend> 
    <div class="editor-label"> 
     @Html.LabelFor(model => model.loan_amount) 
    </div> 
    <div class="editor-field"> 
     @Html.TextBoxFor(model => model.loan_amount) 
    </div> 
    <br /> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.interest) 
    </div> 
    <div class="editor-field"> 
     @Html.TextBoxFor(model => model.interest) 
    </div> 
    <br /> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.loan_duration) 
    </div> 
    <div class="editor-field"> 
     @Html.TextBoxFor(model => model.loan_duration) 
    </div> 
    <br /> 

    <div class="editor-label"> 
     @Html.LabelFor(model => model.payments_year) 
    </div> 
    <div class="editor-field"> 
     @Html.TextBoxFor(model => model.payments_year) 
    </div> 
    <br /> 

    <input type="submit" value="Calculate" /> 

</fieldset> 

}

aldığım verilere bazı hesaplamalar yapmak istiyorum Kullanıcıdan ve ardından sonuçlarımın görünümünde sonuçları göster. Veritabanım yok. Sadece veriler üzerinde basit hesaplamalar yapmak ve sonuçları göstermek istiyorum. Çözüm oldukça düz görünüyor ama sıkışıp kaldım. Herhangi bir yardım için minnettar olurum. Bunun yerine başka bir eylem yönlendirme kullanıcının

+0

'Results()' yönteminiz 'MortgageCalculator mortgageCalculator' parametresine sahiptir, ancak yönlendirdiğinizde bu yönteme hiçbir şey aktarmıyorsunuz, bu nedenle varsayılan bir örnek olacaktır. Verilerinizi bir yerde 'M_Calculator' yönteminde ısrar etmeniz ve sonra tekrar Results() 'yönteminde almanız gerekir. İdeal olarak bir veritabanına, ancak 'Session' (' TempData' dahil) kullanabilirsiniz –

cevap

1

böyle nüfuslu sonuçla modelinizi, dönmelidir:

[HttpPost] 
public ActionResult M_Calculator(MortgageCalculator mortgageCalculator) 
{  
    UpdateModel(mortgageCalculator); 
    return View("Results", mortgageCalculator); 
} 

sonuçları göstermek için yalnızca başka görünüm oluşturmak istemiyorsanız, sadece kaldırmak ASP.NET MVC'nin hangi görünümü kullanması gerektiğini belirten ilk parametre, bu nedenle varsayılan görünümü kullanacaktır.

İlgili konular