@ Html.Dropdownlist列表未保存到数据库

dc922

在下面的示例中,我尝试将Asp.Net标识的“ aspnetusers”表“ Id”列中的ID保存到我的“ Application”表中。当我提交申请时,“全名”的下拉列表会填充,但不会保存到我的“应用”表中。提交应用程序后,我需要将aspnetusers表中的“ Id”保存到我的“应用程序”表中。帮助将不胜感激!

控制器:

private ApplicationDbContext db = new ApplicationDbContext();

public ActionResult Index()
{
    ViewBag.FullNameList = new SelectList(db.Users,"Id","FullName");
    return View();
}

// POST: Applications/Create
[ValidateAntiForgeryToken]
public ActionResult Index([Bind(Include = "Id,FullName, FirstName,MiddleInitial,LastName,")]   Application application)
{
    if (ModelState.IsValid)
    {
        ViewBag.FullNameList = new SelectList(db.Users, "Id", "FullName", application.ApplicationUser);
        db.Applications.Add(application);

        db.SaveChanges();

        return RedirectToAction("Thanks");
    }
}

看法:

<p>
      @Html.DropDownListFor(m => m.FullName, (SelectList)ViewBag.FullNameList, "Select Loan Officer")
</p>

模型:

public class Application
{
    public int ApplicationId { get; set; }

    [Required]
    [DisplayName("First Name")]
    public string FirstName { get; set; }

    [DisplayName("Middle Initial")]
    public string MiddleInitial { get; set; }

    [Required]
    [DisplayName("Last Name")]
    public string LastName { get; set; }

    public virtual string FullName {get; set; }

    public virtual ApplicationUser ApplicationUser { get; set; }
}   
克里斯·普拉特

有很多错误:

  1. 您的发布操作接受Application,但没有FullName属性。
  2. 即使它Bind包含了,您的属性也不包含它。
  3. 您不能拥有一个ViewBag持有与您要发布的字段同名的选择列表成员。将其更改为类似ViewBag.FullNameChoices
  4. 过帐的值将是Id“贷款人员”用户的值,而您对此却无计可施。如果您实际上有一个外键属性,则可以直接发布到该属性,但是您只是依靠EF来创建一个您无法访问的隐式属性。在发布操作中,您需要使用Id数据库中的用户来查找用户,然后将其ApplicationUser属性设置为该用户。
  5. 尽管从技术上来说并没有,但拥有代表应用程序调用的“贷款人员”的属性ApplicationUser并不直观。您应该将其更改为LoanOfficer同样,您似乎假设所有时间的所有用户也都将是“贷款人员”,您可能应该通过ApplicationUser为贷款人员创建的子类或使用角色来分配该状态来计划一些灵活性

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

HTML标签作为HTML实体保存到数据库

保存到数据库时如何转义html?

PHP不会将HTML代码保存到数据库

检索HTML动态表单字段数据并保存到MySQL数据库

将数据从html表单保存到列表

.NET 列表未保存到数据库?

onClick HTML表格单元格保存到django数据库中

从ckeditor保存到数据库的带有html标签的文本打印

如何将HTML5,经度和纬度保存到数据库中?

如何使用 JAVA 将图像从 HTML 保存到数据库

动态HTML表单并保存到数据库的多个记录中

如何从HTML页面创建PNG图像并将其使用Django保存到数据库中?

Laravel 如何将 HTML 保存到数据库然后检索它

数据未保存到数据库

HTML表单数据未保存在数据库中-Django

实体未保存到数据库

在show.html.erb中使用简单表单(嵌套表单)不会将数据保存到数据库

是否可以从HTML5的本地存储中提取数据并将其保存到服务器数据库?

无法在我的 html 文件中初始化 firebase 并将任何数据保存到实时数据库

将列表保存到数据库

HTML 输入标记值未保存在 SQLite 数据库中 - Django

将html表中的输入字段值保存到.txt中,而无需数据库或服务

将Ckeditor编辑器元素保存到数据库中后,如何在html中设置其格式?

如何在使用 django 按下 html 按钮时将布尔值保存到数据库中

我的HTML数据未显示在数据库中

MYSQL数据库未显示从HTML表单插入的数据

列表框项目值未保存到数据库

数据未使用Django表单保存到数据库

CakePHP HABTM数据未保存到数据库