.net是好是坏众说纷纭,不容置疑的是,.net5是微软进步的一大体现,终于可以跨平台了,这才是最大的亮点。
sdk下载地址:https://dotnet.microsoft.com/download/dotnet/5.0
为了进步,开始尝试.net5。
初期工作:
安装sdk
安装vs。注意:写.net5vs有版本限制。要求在vs2019 16.8版本之上。
创建一个mvc项目,项目框架如下。
今天我们就使用控制器(c)和视图(v)写一个小案例
控制器里可以写一些自定义的属性与view里的视图进行对应匹配。
//控制器代码
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Threading.Tasks;
using WebApplication1.Models;
namespace WebApplication1.Controllers
{
public class HomeController : Controller
{
private readonly ILogger<HomeController> _logger;
public HomeController(ILogger<HomeController> logger)
{
_logger = logger;
}
public IActionResult Index()
{
base.ViewBag.User1 = "张三";
base.ViewData["User2"] = "李四";
base.ViewData["User3"] = "王五";
Object user4 = "赵六";
if( HttpContext.Session.GetString("User5")==null)
{
HttpContext.Session.SetString("User5", "田七");
}
return View(user4);
}
public void Index1(string i)
{
}
public void Index2(int i)
{
}
public IActionResult Privacy()
{
return View();
}
[ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
public IActionResult Error()
{
return View(new ErrorViewModel { RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier });
}
}
}
转到index视图,代码如下,
@{
ViewData["Title"] = "Home Page";
}
@model System.String;
@using Microsoft.AspNetCore.Http;
<div class="text-center">
<h1 class="display-4">Welcome</h1>
<p>Learn about <a href="https://docs.microsoft.com/aspnet/core">building Web apps with ASP.NET Core</a>.</p>
</div>
<h1>
@base.ViewBag.User1
</h1>
<h1>
@base.ViewData["User2"]
</h1>
<h1>
@base.ViewData["User3"]
</h1>
<h1>
@Model
</h1>
<h1>
@Context.Session.GetString("User5");
</h1>
设置session需要添加session设置
运行 结果如下
以上代码能够将控制器与视图的数据展示到界面,而控制器的index1方法能够接收页面的值。
具体需要打断点测试。输入以下地址
http://localhost:2511/Home/Index1?i=4
结果如下。
以上就是通过mvc项目进行数据的传递以及vc的应用。
具体来说.net5还是很好用的。点赞