关于学生数据库的一些总结

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();
}

猜你喜欢

转载自blog.51cto.com/14477902/2430077