填充mvc5列表?

时间:2015-06-29 09:22:16

标签: c# asp.net-mvc asp.net-mvc-5 asp.net-mvc-5.1

现在我可以在Games / Create下创建游戏。 我可以在Post / Create下发帖。

但我的问题是,现在我的public int GameId { get; set; }会填充我的SQL数据库中Game表中的项目。哪个好我就喜欢它。

但我希望public string Title { get; set; }以与游戏数据库中的值相同的方式填充。

public int GameId { get; set; }将填充一个下拉列表,其中包含我的Game表中的值。

至于public string Title { get; set; },我必须手动输入。我希望以与GameId

相同的方式填充

这是我的帖子模型

public class Post
{
    [Key]
    public int PostId { get; set; }

    //URL
    [Display(Name = "URL")]
    [StringLength(80)]
    public string Url { get; set; }
    //User
    [Display(Name = "User")]
    public virtual ApplicationUser User { get; set; }

    //Game
    [Display(Name = "Game")]
    public int GameId { get; set; }
    [Display(Name = "Next Game")]
    public string Title { get; set; }
    public virtual Game Game { get; set; }

    //Time
    private DateTime? _date;
    public DateTime? Date
    {
        get
        {
            if (_date == null || _date.ToString() == "1/1/0001 12:00:00 AM")
            {
                return _date = DateTime.Now;
            }
            return _date;
        }
        set
        {
            _date = value;
        }
    }

这是我的游戏模型

    public class Game
{
    [Key]
    public int GameId { get; set; }

    //Game
    [Display(Name = "Game")]
    public string Title { get; set; }

    //User
    [Display(Name = "User")]
    public virtual ApplicationUser User { get; set; }
}

1 个答案:

答案 0 :(得分:0)

实际上你不需要你的邮政模型中的你的财产标题,在你的控制器中你可以做这样的事情来获取游戏的所有数据。

using (var db = new YourDbContext())
{
    var post = db.Posts().Include(g => g.Game).FirstOrDefault();
    var gameTitle = post.Game.Title;
}