1

私は caliburn.micro を使用しており、Bootstrapper を次のように構成しました: bootstrapper configurationですが、残念ながら、エクスポートされた値を新しいインスタンスとして要求する方法が見つかりません。コンテナーは常にシングルトンを返します。

私は PhoneContainer (WindowsPhone) も使用しており、PerRequest や Singleton などの優れた機能を備えています。WPFにそのようなものはありますか?

4

1 に答える 1

2

この記事のように MEF を使用している場合は、リクエストごとにインスタンスを作成する必要がある場合はいつでも、次のようにエクスポートします。

interface IFileReader {
    int ReadChar(string fileName);
}

[Export(typeof(IFileReader))]
[PartCreationPolicy(CreationPolicy.NonShared)]
class FileReaderImpl : IFileReader {
    // IMPLEMENTATION GOES HERE
}

もちろん、これは MEF (MEF Lifestyles)に固有のものですが、お気に入りのコンテナーを使用したい場合は、Caliburn.Micro と呼ばれるコンテナーが提供されてSimpleContainerいます。そのためのドキュメントはまもなく公開されますが、API は非常に直感的であり、 Unity、Ninject などの他のコンテナーを使用できるように、Unity の使用に関するこのリンクを確認してください。他のコンテナーのプロセスはかなり似ています。

于 2013-06-02T21:36:20.507 に答える