0

我正在使用 C#.NET、Entity Framework 4.1 和代码优先方法。从那我有一堆,entities一个entity与另一个有关entity。它们具有主键/外键关系。

我还ViewModels用来指定可以搭建哪些属性,我希望这两个相关实体会创建一个下拉列表。但这并没有发生。

这只是我的实体关系外观的一个示例,以说明我的问题。

用户类型实体:

public class UserType
{
    public int UserTypeID { get; set; }
    public string Type { get; set; }

    public virtual ICollection<User> Users { get; set; }
}

用户实体:

public class User
{
    public int UserID { get; set; }
    public int UserTypeID
    public string Username { get; set; }

    public bool IsAdmin { get; set; }

    public virtual UserType UserType { get; set; }
}

我的视图模型:

[JsonObject(MemberSerialization = MemberSerialization.OptOut, IsReference = false)]
[DataContract]
public class UserViewModel : BaseViewModel
{
    [Key]
    public int UserID { get; set; }

    public int UserTypeID { get; set; }

    [required]
    public string Username { get; set; }
}

所以UserViewModel是脚手架。我希望它为UserType. 但现在它只inputUserTypeID. 我怎样才能让它显示一个下拉列表的值UserTypes

4

1 回答 1

0

脚手架不知道视图模型中的 UserTypeId 与实际的 UserType 类相关,因此无法知道从哪里获取用户类型的静态列表。如果您查看您引用的示例,它还包括外键类的导航属性。

于 2012-10-12T08:24:10.100 回答