如何将类的对象发送到数据库以存储在 ASP.NET MVC5 中?
Posted
技术标签:
【中文标题】如何将类的对象发送到数据库以存储在 ASP.NET MVC5 中?【英文标题】:How to send an object of a class to database for storing in ASP.NET MVC5? 【发布时间】:2021-05-30 02:38:11 【问题描述】:我从表单中获取数据并在控制器的操作方法中检索它。这里我将它存储在一个名为 User Class 的类的对象中。然后我想将它存储在数据库中,为此我创建了一个数据库模型对象。然后我试图通过在下面的代码中实现它来将用户类对象传递给数据库模型,但它给出了无法将 youtube.Models.user 转换为 Youtube.Models.Registerations 的错误。
//Form
<form method="post">
<span class="form-group ">
<label>First Name:</label>
<input type="text" class="form-control" id="uname" name="Fname" required>
</span>
<div class="form-group ">
<label>Last Name:</label>
<input type="text" class="form-control" id="uname" name="Lname" required>
</div>
<div class="form-group ">
<label>Username:</label>
<input type="text" class="form-control" id="uname" name="uname" required>
</div>
<div class="form-group ">
<label>Password:</label>
<input type="password" class="form-control" id="pwd" name="pswd" required>
</div>
<div class="form-group ">
<label>Confirm Password:</label>
<input type="password" class="form-control" id="pwd" name="cpswd" required>
</div>
<div id="invalid"></div>
<input type="submit" name="submit" value="SignUp" class="btn btn-primary">
</form>
【问题讨论】:
【参考方案1】:在注册方法中,您正在创建用户模型的对象。但是这一行
youtube.Registration.Add();
告诉实体框架您正在尝试添加注册模型的对象,但您正在传递用户模型的对象为什么它显示错误。
创建一个注册模型的对象,然后初始化它的属性,然后像这样添加到ef中-
Registration registration = new Registration();
resgistration.YourPropertyName1 = "SomeValue";
......
youtube.Registration.Add(registration);
youtube.SaveChanges();
同样适用于用户模型 -
youtube.User.Add(user);
youtube.SaveChanges();
你明白了吧?
【讨论】:
是的,我知道了,非常感谢您的帮助。以上是关于如何将类的对象发送到数据库以存储在 ASP.NET MVC5 中?的主要内容,如果未能解决你的问题,请参考以下文章