English 中文(简体)
• 在马夫茨制造时的 drop子
原标题:interact objects in dropdownlist when create in mvc

我有2个班级: 用户和作用

public class User : IPrincipal
{        
    public int UserId { get; set; }

    [Required]
    [Display(Name = "User name")]
    public string Username { get; set; }

    [Required]
    [DataType(DataType.Password)]
    public string Password { get; set; }

    [Required]
    [DataType(DataType.EmailAddress)]
    public string Email { get; set; }

    [Display(Name = "Created date")]
    public DateTime CreatedDate { get; set; }        

    [Required]
    [Display(Name = "Password question")]
    public string PasswordQuestion { get; set; }

    [Required]
    [Display(Name = "Password anwser")]
    public string PasswordAnswer { get; set; }

    [Display(Name = "Active")]
    public bool IsApproved { get; set; }

    [Display(Name = "Last login date")]
    public DateTime LastLoginDate { get; set; }

    [Display(Name = "Last password changed date")]
    public DateTime LastPasswordChangedDate { get; set; }

    [Display(Name = "Last activity date")]
    public DateTime LastActivityDate { get; set; }

    public virtual Role Role { get; set; }

    public virtual IIdentity Identity { get; set; }
    public virtual bool IsInRole(string role)
    {
        if (Role.Name.ToLower() == role.ToLower())
        {
            return true;
        }
        return false;
    }
} 

public class Role
{
    public int RoleId { get; set; }

    [Required]
    [Display(Name = "Role name")]
    public string Name { get; set; }
}

我设立了阅读/标准实体的用户主计长,在制作方法时,我设立了“观点”。 作用清单

public ActionResult Create()
{
    ViewBag.Role = new SelectList(db.Roles, "RoleId", "Name");
    return View();
} 

目的是:

<div class="editor-label">
    @Html.LabelFor(model => model.Role)
</div>
<div class="editor-field">
    @Html.DropDownList("Role")
    @Html.ValidationMessageFor(model => model.Role.RoleId) @* I don t know this is correct? *@
</div>

In create view with HttpPost attribute, when user choose one role, and submit, I can t get a value of role. Anyone who know the way to add role into user by select dropdownlist? I means, when I drop down list role and select item in there, and submit, I add one user row into table Thank you

问题回答

你们可以通过把它作为用户的财产来揭露外国钥匙的作用。

那么,你的看法就好了。

<div class="editor-field">
    @Html.DropDownListFor(model => model.RoleId, (SelectList)ViewBag.Role)
    @Html.ValidationMessageFor(model => model.RoleId)
</div> 




相关问题
Entity Framework with MySQL connector in c#

I have been trying to get the Entity Framework to work in my web application using MySQL. It works fine on my local pc, but doesn t work when I put it on the server. Since the server is a shared ...

How Do I Create And Update A Many To Many Relationship With EF

I am using the Entity Framework with SQL Server. I have a many to many relationship between 2 tables. I have created a join table with just the primary key fields of the 2 tables. In the designer, the ...

Entity Framework with File-Based Database

I am in the process of developing a desktop application that needs a database. The application is currently targeted to SQL Express 2005 and works wonderfully. However, I m not crazy about having ...

Linq to enties, insert foreign keys

I am using the ADO entity framework for the first time and am not sure of the best way of inserting db recored that contain foreign keys. this is the code that i am using, I would appreciate any ...

Entity Framework - Many to many question

I have a table called ASB and a table called PeopleInvolved. There is a junction table called PeopleInvolved_ASB which simply contains an ASBID and a PeopleInvolvedID column. The columns act as a ...

Post back complex object from client side

I m using ASP.NET MVC and Entity Framework. I m going to pass a complex entity to the client side and allow the user to modify it, and post it back to the controller. But I don t know how to do that ...

ADO.NET Entity Data Model are not precise enough

I run this code: var cos = from k in _db.klienci_do_trasy where k.klient_id == 5 select k; but the query send to database is: SELECT * FROM `klienci_do_trasy` LIMIT 0, 30 why is it for, there ...

热门标签