構成バッチを使用してコンテナーからパーツを削除する場合、削除する必要があるパーツへの参照を取得するにはどうすればよいですか? コンポジトン バッチ削除メソッドは、コンポーザブル パーツを取ります。AddPart メソッドも composablepart 型パラメーターを受け取りますが、オブジェクトを受け取り、AttributedModelServices.CreatePart を使用して composablepart を取得する過負荷 (拡張メソッド) があります。コンテナーから取得した参照で AttributedModelServices.CreatePart を使用してから、それを remove メソッドに使用しようとしましたが、コンテナーから削除されませんでした。
元の AddPart 呼び出しによって返された参照を保存できますが、それはつまり、その参照をアプリケーション全体で永続化する必要があるということです。私がやりたいことではありません。コンテナのパーツをループする例を見たことがありますが、それはハッキーに思えます。
コンテナに必要なものを返すにはどうすればよいですか。
疑似コード
CompositionBatch batch = new CompositionBatch([] { Part1, Part2 }, []{});
Container.Compose(batch);
var partRef = Container.GetExport<Part2>();
batch = new CompositionBatch();
batch.RemovePart(partRef);
container.Compose(batch);