用于更新实体的设计模式

本文关键字:设计模式 实体 更新 用于 | 更新日期: 2023-09-27 18:35:21

我需要保存/更新单个实体或实体集合。我已经为同样的课程写了一个类。在我的示例中,我只使用了两个实体,它们被部分保存和全部保存。但在实际情况下,可能会有更多的实体:

public class Supplier
{
}
public class Product
{
}
public class Data
{
    public Product prod { get; set; }
    public Supplier supp { get; set; }
}

保存实体的相应方法

public static class ProductFactory
{
    public static void Save(Product prod)
    {
        //Save Product table
    }
}
public static class SupplierFactory
{
    public static void Save(Supplier supp)
    {
        //Save Supplier table
    }
}
//Method to Save All ENTITIES
public static class DataFactory
{
    public static void Save(Data data)
    {
        //Save Data which Consists Product and Supplier
        ProductFactory.Save(data.prod);
        SupplierFactory.Save(data.supp);
    }
}
//Implemention of Save
        Product prod = new Product()  ;
        Supplier supp=new Supplier();
        Data data=new Data()  ;
        //Saving Product individually
        ProductFactory.Save(prod);
        //Saving Supplier individually
        SupplierFactory.Save(supp);
        //Saving Data which Consists Supplier and Product
        DataFactory.Save(data);   

有人可以提出更好的设计吗?在产品/供应商之上可能有更多的实体。

用于更新实体的设计模式

看看存储库模式,你最终会得到处理所有 CRUD 操作的"存储库"类。如果您以后要使用依赖项注入之类的东西,将所有 CRUD 操作放在不同的层中将对您有所帮助。