ASP .NET MVC - 无法更新一对一的数据
创始人
2024-11-11 15:00:16
0

在ASP .NET MVC中,有时候在更新一对一关系的数据时会遇到问题。下面是一个解决该问题的示例代码。

假设我们有两个实体类:User和Profile,它们之间是一对一的关系。

public class User
{
    public int Id { get; set; }
    public string Name { get; set; }
    public Profile Profile { get; set; }
}

public class Profile
{
    public int Id { get; set; }
    public string Address { get; set; }
    public User User { get; set; }
}

在Controller中,我们可以使用EF Core来更新一对一关系的数据。

public class UserController : Controller
{
    private readonly ApplicationDbContext _context;

    public UserController(ApplicationDbContext context)
    {
        _context = context;
    }

    public IActionResult Edit(int id)
    {
        // 获取要编辑的用户
        User user = _context.Users.Include(u => u.Profile).FirstOrDefault(u => u.Id == id);

        return View(user);
    }

    [HttpPost]
    public IActionResult Edit(User user)
    {
        if (ModelState.IsValid)
        {
            // 更新用户信息
            _context.Users.Update(user);

            // 更新用户的Profile信息
            _context.Profiles.Update(user.Profile);

            _context.SaveChanges();

            return RedirectToAction("Index");
        }

        return View(user);
    }
}

在Edit视图中,我们可以使用表单来编辑用户和Profile的信息。

@model User

这样,当用户提交编辑表单时,会更新User和Profile的信息,并保存到数据库中。

相关内容

热门资讯

透视挂"wejoke... 1、透视挂"wejoker辅助器要钱玩吗"详细辅助2025新版技巧(辅助器要钱玩技巧);详细教程。2...
透视工具"werpl... 透视工具"werplan外卦神器"详细辅助安装教程(透视脚本下载攻略);实战中需综合运用上述技巧,并...
透视神器"哈糖大菠萝... 透视神器"哈糖大菠萝怎么开挂"详细辅助扑克教程(辅助软件视频软件);亲真的是有正版授权,小编(透视辅...
透视实锤"如何下载w... 透视实锤"如何下载wpk透视版"详细辅助AI教程(辅助器是真的攻略);大神普及一款德州ai内幕,确定...
透视ai代打"wep... 透视ai代打"wepokerplus外挂"详细辅助力荐教程(开辅助能查到攻略)是一款可以让一直输的玩...
透视系统"wepok... 透视系统"wepoker挂"详细辅助微扑克教程(正规技巧)1、许多玩家不知道wepoker挂辅助软件...
透视数据"aapok... 自定义aapoker辅助软件合法吗系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用...
透视好友"wepok... 透视好友"wepoker私人辅助器"详细辅助插件教程(轻量版辅助透明)关于wepoker私人辅助器机...
透视攻略"HH平台挂... 透视攻略"HH平台挂"详细辅助必备教程(挂教程);致您一封信;亲爱HH平台挂玩家:《HH平台挂透明挂...
透视了解"wepok... 透视了解"wepoker智能辅助插件"详细辅助专业教程(买钻石有用方法);实战中需综合运用上述技巧,...