これら 2 つの登録の autofac の違いは何ですか:
builder.Register(c => Instance).As<ISomeInterface>();
と
builder.RegisterInstance(Instance).As<ISomeInterface>().SingleInstance().ExternallyOwned();
Instance は、登録が行われる autofac モジュールの (非静的) プロパティであり、オブジェクト初期化子によって設定されます。
質問する理由は、デバッグ中のコードで前者が実行されており、ISomeInterface のインスタンスが 2 つ浮かんでいるかのように奇妙な動作をしているためです。機能上の必要性は、インスタンスがコンテナーの存続期間 (= アプリケーションの存続期間) にわたって存続することです。
私が最初のことをすべきではないと私に言わないでください-それは行われました.