1

2 つのテーブル間に 1 対 1 の関係を作成しようとしていますが、結果として 1 対多になります。このコードの問題は何ですか?

namespace EFCF_Demo.Models
{
    public class Post
    {
        [Key]
        public int ID { get; set; }
        public string Title { get; set; }
        public string MiniContent { get; set; }
        public string Author { get; set; }
        public DateTime PublishDate { get; set; }
        public int Rating { get; set; }
        public virtual Content MainContent { get; set; }   
    }

    public class Content
    {
        public int ID { get; set; }
        public virtual Post Post { get; set; }
        public string FullContent { get; set; }
    }

    public class PostEntities : DbContext
    {
        public DbSet<Post> Posts { get; set; }
        public DbSet<Content> Contents { get; set; }
    }
}
4

3 に答える 3

2

Content クラスの PostId と Post クラスの ContentId は必要ありませんか?

        public class Content
        {
            [Key]
            public int PostId { get; set; }
            public virtual Post Post { get; set; }
            public string FullContent { get; set; }
        }

これはどうですか:)これでうまくいくはずです。

于 2011-05-10T12:27:36.243 に答える
1

削除することで問題が解決しました

public DbSet<Content> Contents { get; set; }

その後、Fluent API を使用する必要はありませんが、保存に問題があります。

于 2011-01-18T09:21:33.900 に答える