配置文件
端口配置文件:
iissettings代表iss启动时使用的配置参数
launchSettings.json
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:8497",
"sslPort": 0
}
},
"profiles": {
"WebApplication1": {
"commandName": "Project",
"dotnetRunMessages": true,
"launchBrowser": true,
"applicationUrl": "http://localhost:5161",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
}
控制器,可以通过return json直接以json格式返回数据给前端页面展示
using Microsoft.AspNetCore.Mvc;
namespace WebApplication1.Controllers
{
public class FirstController : Controller
{
private readonly ITestSeriveA testSeriveA;
//声明无参构造
//访问有参注入时,应该保证被访问的类与当前类访问等级一致
public FirstController(ITestSeriveA itestserviceA)
{
testSeriveA = itestserviceA;
}
public IActionResult Index()
{
//bag点
ViewBag.User1 = "张三";
//data括
ViewData["User2"] = "李四";
HttpContext.Session.SetString("token", "123456");
object user3 = "王五";
return View(user3);
}
public IActionResult showData(int id,string name) {
//以json形式返回前端页面
return Json(new { id=id, name=name });
}
public IActionResult showIOCData()
{
Models.UserInfo userInfo = testSeriveA.testService();
return Json(userInfo);
}
}
}
Service
using WebApplication1.Models;
namespace WebApplication1.Controllers
{
public interface ITestSeriveA
{
internal UserInfo testService();
}
}
实现类Impl
using WebApplication1.Models;
namespace WebApplication1.Controllers
{
public class ITestServiceAImpl : ITestSeriveA
{
public UserInfo testService()
{
UserInfo userInfo = new UserInfo();
userInfo.Id = 1;
userInfo.Name = "the first mvc";
Console.WriteLine("实现接口测试");
return userInfo;
}
}
}
模型
namespace WebApplication1.Models
{
public class UserInfo
{
public int Id { get; set; }
public string Name { get; set; }
}
}
视图
@model string
@{
ViewData["Title"] = "Index";
}
<h1>Index</h1>
<h2>user1:@ViewBag.User1</h2>
<h2>user2:@ViewData["User2"]</h2>
<h2>token:@Context.Session.GetString("token")</h2>
<h2>user3:@Model</h2>
<a href="/first/showData?id=123&name=richard">传递数据到后台</a>
配置文件注册服务
在program.cs中配置
builder.Services.AddSession();//配置session
builder.Services.AddTransient<ITestSeriveA, ITestServiceAImpl>();//注册服务
app.useSession()
完整Program.cs配置文件
using WebApplication1.Controllers;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSession();//配置session
builder.Services.AddTransient<ITestSeriveA, ITestServiceAImpl>();//注册服务
// Add services to the container.
builder.Services.AddControllersWithViews();
var app = builder.Build();
// Configure the HTTP request pipeline.
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseSession();
app.UseRouting();
app.UseAuthorization();
app.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
app.Run();