填充mvc5列表

本文关键字:列表 mvc5 填充 | 更新日期: 2023-09-27 18:00:12

现在我可以在games/create下创建游戏。我可以在发布/创建下发帖。

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

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

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

至于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; }
}

填充mvc5列表

实际上,您不需要在Post Model中使用您的属性Title,在您的控制器中,您可以执行这样的操作来获取Game的所有数据。

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