一、需求分析
實現效果
二、實現步驟
步驟一:新建項目--->Web---->空模板
步驟二:添加控制器
步驟三:根據控制器名稱添加視圖
步驟四:添加Models模型 編寫具體的方法
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace MVCDemo.Models
{
public class Calculator
{
public int getAVG(int sumScore,int sumSubject)
{
return sumScore / sumSubject;
}
}
}
步驟五:編寫視圖,具體展示的內容
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>CalculatorView</title>
</head>
<body>
<form method="post" action="/Calculator/Calculate">
計算平均成績<br/>
總成績:<input type="text" name="sumScore" /> <br/>
總科目:<input type="text" name="sumSubject" /><br/>
<input type="submit" value="開始計算"/><br/>
@ViewData["avgScore"]
</form>
</body>
</html>
步驟六:編寫控制器活動方法
using MVCDemo.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
namespace MVCDemo.Controllers
{
public class CalculatorController : Controller
{
// GET: Calculator
public ActionResult Index()
{
return View("CalculatorView");
}
public ActionResult Calculate()
{
//[1]獲取數據
int sumScore = Convert.ToInt32(Request.Params["sumScore"]);
int sumSubject = Convert.ToInt32(Request.Params["sumSubject"]);
//[2]處理數據
Calculator objCal = new Calculator();
int avgScore = objCal.getAVG(sumScore, sumSubject);
//[3]返回數據
ViewData["avgScore"] = "平均成績為:" + avgScore;
return View("CalculatorView");
}
}
}
步驟七:修改路由
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;
namespace MVCDemo
{
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Calculator", action = "Index", id = UrlParameter.Optional }
);
}
}
}