1
public partial class Authors
{
    [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
    public Guid Id { get; set; }
    public string Name { get; set; }        
    protected ICollection<Books> Books { get; set; }
}

AuthorsテーブルにはGuid主キーがあり、データベースを生成するために属性に署名しました。

public class Books
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string ISBNNumber { get; set; }
    public Guid AuthorId { get; set; }

    public virtual Authors Author { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        BookStoreEntities1 context = new BookStoreEntities1();

        Authors author = new Authors();
        author.Name = "Sample Author Name";

        Books authorBook1 = new Books();
        authorBook1.ISBNNumber = "11145-8854-9987";
        authorBook1.Name = "Book 1";

        Books authorBook2 = new Books();
        authorBook2.ISBNNumber = "4145-8854-2987";
        authorBook2.Name = "Book 2";

        author.AddBook(authorBook1);
        author.AddBook(authorBook2);

        context.Authors.Add(author);
        context.SaveChanges();
    }
}

そして、データベースに新しいレコードを挿入するクライアント コードを作成しました。このクライアント コードは、作成者をAuthorsテーブルに挿入していますが、挿入していませんBooks

Author Idこの場合、int(not Guid)に変更するAuthorBooks、データベースに挿入されます。

これについてあなたはどう思いますか?

4

0 に答える 0