C# ASP.NET MVC检查用户是否可以执行操作
我的数据库中有一组由不同用户创建的帖子C# ASP.NET MVC检查用户是否可以执行操作,c#,asp.net-mvc,C#,Asp.net Mvc,我的数据库中有一组由不同用户创建的帖子 每个用户都可以创建帖子并仅编辑其帖子 要编辑他们的帖子,用户导航到“Posts/EditPost?PostID=x”页面,其中x是帖子ID “Posts”控制器有一个“[Authorize]”属性,操作的GET部分检查post是否由用户完成 如果用户确实发了帖子,它会呈现视图。在视图中有一个隐藏字段,带有“posted” 当用户提交表单时,操作的POST部分将重新检查PostID是否与当前登录用户创建的POST匹配 有没有更好的方法可以做到这一点,而不
- 每个用户都可以创建帖子并仅编辑其帖子
- 要编辑他们的帖子,用户导航到“Posts/EditPost?PostID=x”页面,其中x是帖子ID
- “Posts”控制器有一个“[Authorize]”属性,操作的GET部分检查post是否由用户完成
有没有更好的方法可以做到这一点,而不必反复检查用户是否有权编辑帖子,或者这是最好的方法?这对我来说确实不错。如果您不想检查用户两次,我唯一能建议的是使用类似于渲染视图的对象。由于只有在允许编辑帖子的情况下,您才能访问上的视图,因此我认为您需要做的就是检查帖子是否来自您的站点。我也遇到了同样的问题,但我通过取消在视图中编辑的功能来解决。一旦删除了编辑功能,我可以假设如果进行了编辑,那么用户就拥有了权限 我这样做是因为其他人,版主,也必须能够编辑帖子 很明显,这在互联网上可能不起作用,因为你可以绕过安全措施,但在公司内部网上,这是一种享受 我仍然认为我应该在业务层检查用户权限,但他们需要给我更多的钱和时间