小编Avi*_*iko的帖子

MongoDB c# 驱动程序:如何为类中的所有成员设置 SetIgnoreIfDefault

我想为类的所有属性设置 SetIgnoreIfDefault(true)。(这可以在存储中保存 TONS 的默认数据)

我可以为每个属性显式调用 SetIgnoreIfDefault:

    BsonClassMap.RegisterClassMap<MyClass>(cm =>
    {
        cm.AutoMap();
        cm.MapProperty(x => x.A).SetIgnoreIfDefault(true);
        cm.MapProperty(x => x.B).SetIgnoreIfDefault(true);
        cm.MapProperty(x => x.C).SetIgnoreIfDefault(true);
        cm.MapProperty(x => x.D).SetIgnoreIfDefault(true);
        cm.MapProperty(x => x.E).SetIgnoreIfDefault(true);
        ...
        cm.SetIgnoreExtraElements(true);
    });
Run Code Online (Sandbox Code Playgroud)

但是我有很多类和很多属性,如果我修改了类,我需要记住更改注册。

有没有办法在一次调用中为类的所有属性设置它?

有没有办法在全局范围内为所有属性设置它?

谢谢

c# mongodb mongodb-csharp-2.0 mongodb-.net-driver

4
推荐指数
1
解决办法
783
查看次数

使用EFCore.BulkExtensions时是否需要调用SaveChanges

我开始将EFCore.BulkExtensions用于ef批量操作,它的工作非常好。

(请参阅https://github.com/borisdj/EFCore.BulkExtensions/

我是否还需要调用SaveChanges:

        using (var db = new ReportingContext())
        {
            db.BulkInsertOrUpdate(entities);
            db.SaveChanges();
        }
Run Code Online (Sandbox Code Playgroud)

还是足够好?

        using (var db = new ReportingContext())
        {
            db.BulkInsertOrUpdate(entities);
        }
Run Code Online (Sandbox Code Playgroud)

c# entity-framework-core ef-core-2.0

3
推荐指数
1
解决办法
1201
查看次数