【问题标题】:ASP.NET EF 有一个路由模型绑定,就像在 Laravel 中一样?
【发布时间】:2022-01-22 09:02:59
【问题描述】:

在 Laravel 之后,我尝试在每个框架中找到相同的功能。 现在我正在切换到 ASP.NET,但我担心我不能使用像路由模型绑定这样方便的东西。执行 CRUD 或实施 auth Policy 非常容易。 NET中有类似的东西吗? 例如:

class UserController extends Controller
{
    public function delete(User $user)
    {
       $user->delete();
    }
}

【问题讨论】:

    标签: c# asp.net laravel entity-framework


    【解决方案1】:

    .NET 中的 CRUD 控制器模式如下所示:

    class UserController : Controller
    {
        MyDbContext db;
        public UserController(MyDbContext db)
        {
           this.db=db;
        }
        public async Task Delete(User user)
        {
           db.Users.Remove(user);
           await db.SaveChangesAsync();
        }
    }
    

    实体在 EF 中没有对数据库的引用。它们是 Plain-Old-C#-Objects (POCO),因此您需要使用 DI 来注入 DbContext 的实例。

    Routing 是另外一回事,具体见Routing to controller actions in ASP.NET Core

    【讨论】:

      猜你喜欢
      • 2015-08-28
      • 2021-05-24
      • 2016-06-04
      • 1970-01-01
      • 2018-12-17
      • 2017-06-22
      • 1970-01-01
      • 2015-07-25
      • 1970-01-01
      相关资源
      最近更新 更多