Tôi muốn biết sự khác nhau giữa việc tạo các lớp có hoặc không sử dụng "hashset" trong hàm tạo.sử dụng hashset trong khung thực thể
Sử dụng mã tiếp cận đầu tiên (4.3) ta có thể tạo mô hình như thế này:
public class Blog
{
public int Id { get; set; }
public string Title { get; set; }
public string BloggerName { get; set;}
public virtual ICollection<Post> Posts { get; set; }
}
public class Post
{
public int Id { get; set; }
public string Title { get; set; }
public DateTime DateCreated { get; set; }
public string Content { get; set; }
public int BlogId { get; set; }
public ICollection<Comment> Comments { get; set; }
}
hoặc có thể tạo mô hình như thế này:
public class Customer
{
public Customer()
{
BrokerageAccounts = new HashSet<BrokerageAccount>();
}
public int Id { get; set; }
public string FirstName { get; set; }
public ICollection<BrokerageAccount> BrokerageAccounts { get; set; }
}
public class BrokerageAccount
{
public int Id { get; set; }
public string AccountNumber { get; set; }
public int CustomerId { get; set; }
}
được HashSet làm gì ở đây?
tôi có nên sử dụng hashset trong hai mô hình đầu tiên không?
có bài viết nào hiển thị ứng dụng băm không?
Tôi hoàn toàn đồng ý. Trong hầu hết các trường hợp, 'HashSet' * là * phù hợp tự nhiên nhất. –
hashset vẫn có vẻ đúng trong EF6.x. Về bản chất, EF sẽ sử dụng hashsets theo cách chính xác này trong quá trình tạo các kiểu db đầu tiên. –