gpt4 book ai didi

c# - 关注点分离的 MVC 最佳实践

转载 作者:行者123 更新时间:2023-11-30 23:01:40 25 4
gpt4 key购买 nike

<分区>

我正在使用 MVC5 制作网站。

我正在使用脚手架从我的模型类生成我的 Controller 。每当它创建 Controller 的脚手架时,数据库连接和模型操作就会在 Controller 类中发生(见下文)。通过查看此 thread我可以说大多数人都同意这应该发生在模型类中。

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "Username")] User user)
{
if (ModelState.IsValid)
{
db.Entry(user).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(user);
}

我应该让它看起来像这样,而不是让 Controller 执行此操作吗?

用户 Controller

[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit([Bind(Include = "Username")] User user)
{
if (ModelState.IsValid)
{
UserModel userModel = new userModel();
userModel.editUser(user);
return RedirectToAction("Index");
}
return View(user);
}

用户模型

public void editUser(User user){
db.Entry(user).State = EntityState.Modified;
db.SaveChanges();
}

要指定“db”是什么,它将是对我的数据库上下文的引用。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com