Startup.cs ConfigureServices
appsettings.json
问题
- 考虑如何比较好的命名
Troubleshooting
- 表格名 与 LocalContext 里的类名一致
- 在 Startup.cs 添加 connectionstring 的引用 service.AddContext
connectionstring 里中文字符 数据表格 - 拷贝表格里的数据到 txt 再次引用
- Code First 的 增 改删
Add-Migration Initial
Add-Migration AddModelName
Add-Migration ModifyModelName
Update-Database - Authentication的使用
在 Startup.cs 里添加 认证cookie信息 以及 app.useAuthentication()
在 login 里添加 执行 - 实体的增改删加
使用 _context.Student_DB. Add 以及 Remove
_context.SaveChanges()
、
- 一些有用的命令
public LocalContext(DbContextOptions<LocalContext> options) : base(options) { }
public DbSet<Student> Students_DB { get; set; }
public DbSet<Course> Courses_DB { get; set; }
"ConnectionStrings": {
"StudentsDb": "Data Source=DESKTOP-61L5TCQ\MSSQLSERVER2017;Initial Catalog=StudentsDb;User ID=sa;Password=123456;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False"
}
services.AddDbContext<LocalContext>(options =>
options.UseSqlServer(Configuration.GetConnectionString("StudentsDb")));
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.LoginPath = new PathString("/login/");
options.AccessDeniedPath = new PathString("/login/denied");
});
app.UseAuthentication();
Add-Migration Initial
Add-Migration AddModelName
Add-Migration ModifyModelName
string username = Request.HttpContext.User.Claims.FirstOrDefault(s => s.Type == ClaimTypes.Sid).Value;
string role = Request.HttpContext.User.Claims.FirstOrDefault(s => s.Type == ClaimTypes.Role).Value;
ViewBag.Stu = _context.Students_DB.FirstOrDefault(x => x.Username == username);
_context.Students_DB.Add(stu);
_context.SaveChanges();
return RedirectToAction(nameof(MainController.Index),"Main");
Student stu = _context.Students_DB.Find(id);
_context.Students_DB.Remove(stu);
_context.SaveChanges();
return RedirectToAction(nameof(MainController.Index), "Main");
<a href="add">添加</a> 和 <a href="/add">添加</a> 的区别
<form action="filter">
<p>
学号: <input type="text" name="identify">
<input type="submit" value="filter" />
</p>
</form>
public IActionResult Filter(int identify)
{
//Student stu = _context.Students_DB.Find(identify);
var stu = _context.Students_DB.Where(x => x.SNumber == identify);
ViewBag.Stu = stu;
return View();
}