Pergunta

Estou trabalhando em um projeto que atualmente está usando o MEF para importar extensões para um aplicativo de console. Estou procurando a capacidade de fornecer mais do que apenas uma saída baseada em console para o aplicativo que pode ser configurado para as necessidades do usuário.

Estou me perguntando qual caminho ir para fornecer a extensibilidade à funcionalidade de saída neste momento. No passado, eu usaria um modelo de provedor personalizado para permitir que as extensões fossem configuradas através do arquivo app.config.

Existe uma maneira fácil de gerenciar seletivamente peças no MEF de maneira semelhante ou devo apenas recorrer a dois padrões de extensibilidade diferentes para o meu projeto (ou seja, a importação de mef para as extensões principais e um modelo de provedor personalizado .NET para os aspectos de gerenciamento de saída) ?

Foi útil?

Solução

James, pelo que me lembro do MEF, além de usar o modelo de importação/exportação de atributos, você pode escrever seu próprio modelo 'provedor'.

Você provavelmente deve analisar o projeto MEF Contrib, que possui extensões para o modelo de provedor atribuído padrão. O IIRC possui um modelo de provedor baseado em configuração embutido e um modelo de programação fluente.

Confira:

Projeto MEF Contrib

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top