MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

BsonElement-Attribut und benutzerdefinierte Deserialisierungslogik mit MongoDB C#-Treiber

Warum nicht eine separate Eigenschaft für die Benutzer und für die DB für dieselbe private Variable erstellen, etwa so,

public class Foo
{
    private string _text;

    [BsonElement("text"), BsonRequired]
    public string TextDB
    {
        get { return _text; }
        set
        {
            _text = value;
        }
    }

    [BsonIgnore]
    public string Text
    {
        get { return _text; }
        set
        {
            _text = value;
            Bar(_text);
        }
    }

    private void Bar(string text)
    {
        //Only relevant when Text is set by the user of the class,
        //not during deserialization
    }
}