1

オブジェクトのアクティブ化中にクラスのデフォルト コンストラクターを呼び出すように db4o に指示する方法はありますか? 次のコードを試しましたが、うまくいきませんでした:

    private static void ConfigureDatabase()
    {
        var config = Db4oEmbedded.NewConfiguration();
        config.Common.ObjectClass(typeof(Device)).CallConstructor(true);
        using(var db = Db4oEmbedded.OpenFile(config, Helper.GetDataFilePath("index"))) { }
    }

データベースからオブジェクトを取得するときに、Device のコンストラクターが呼び出されることはありません。

デバイスコンストラクターは次のようになります。

    public Device()
    {
        connectionType = ConnectionType.Disconnected;
    }

どんな助けでも大歓迎です。

UPDATE BWT、私はまた、タイプごとに 1 つずつ記述することなく、すべてのオブジェクトに対してコンストラクターを呼び出すように db4o に指示できるかどうかも知りたいと思いました。

4

1 に答える 1

2

これを試しましたか?

IEmbeddedConfiguration configuration = Db4oEmbedded.NewConfiguration();
configuration.Common.CallConstructors = true;
于 2012-06-27T22:13:59.610 に答える