使用 AddRange 的 C# 种子私有成员

C# Seed Private members with AddRange

我有一个产品 class,有 public 和私有成员。示例 UnitPrice 是私有的。当我尝试播种数据时,我需要一种良好的语法方式来使用 Addrange 设置 UnitPrice。我将如何执行此操作?

public partial class Product
{
    public int ProductId { get; set; }
    public string ProductName { get; set; }
    public string ProductDescription { get; set; }
    private float UnitPrice { get; set; }

    public Product(int productid, string productname, string productdescription, float unitprice, string imagelocation)
    {
        ProductId = productid;
        ProductName = productname;
        ProductDescription = productdescription;
        UnitPrice = unitprice;
        ImageLocation = ImageLocation;
    }

如何查看数据?我无法设置单价,因为它无法访问。

        if (!context.Product.Any())
        {
            context.Product.AddRange(
             new Product
             {
                 ProductName = "Samsung T3 Portable SSD - 500GB",
                 ProductDescription = "Superfast Read-Write Speeds of up to 450 MB/s; Shock Resistant & Secure Encryption",
                 UnitPrice = 5.50F,
                 ImageLocation = "Product1.jpg"
             },


Error Code:
    Severity    Code    Description Project File    Line    Suppression State
    Error   CS0122  'Product.UnitPrice' is inaccessible due to its protection level ElectronicsStore    

您有一个接受这些参数的构造函数;使用它:

if (!context.Product.Any()) { 
{
   context.Product.AddRange(
      new Product(id, "Samsung T3 Portable SSD - 500GB",  "Superfast Read-Write Speeds of up to 450 MB/s; Shock Resistant & Secure Encryption", 5.50F, "Product1.jpg"), 
      new Product(/* parameters */) 
) }