如何使用LiteDB保存私有字段

时间:2019-06-25 13:46:01

标签: c# litedb

是否有将用于LiteDB引擎存储的私有属性的属性?

我想将此属性存储在LiteDB数据库中

private string SomeGoodPropertyName { get; set; }

是否在存储过程中包含私有字段的[BsonIgnore]属性(例如“ [BsonInclude]”)的相反位置?

我试图简单地设置[BsonField]属性,但这无济于事,我查看了Mappers,但据我所知,它们全都依赖于公共字段。

这是为什么我要这样做的一个示例: 我有以下课程:

public class Authenticator {
    private string AuthenticationString { get; set; }
    private CashRegisterType ActiveCashRegisterType { get; set; }
    public void SetAuthenticationString(string authString, CashRegisterType type)
    {
       //Perform some validation
       ...

       AuthenticationString = authString;
       ActiveCashRegisterType = type;
    }

    public string GetAuthenticatorString(CashRegisterType type){
       //Validate request -> returns null if validation failed
       ...

       return AuthenticationString;
    }
}

该对象现在应该存储在数据库中(作为另一个文档的子对象)。我不想公开这两个属性,因为我必须在设置和获取它之前执行验证,但是我想将数据存储在磁盘上。

0 个答案:

没有答案