você pode copiar propriedade ou construtor-ARG valores de objetos em Spring.NET XML?

StackOverflow https://stackoverflow.com/questions/357595

  •  21-08-2019
  •  | 
  •  

Pergunta

Eu acredito que me deparei com este um par de meses atrás, mas agora eu estou tendo dificuldades para encontrar a resposta. Talvez alguém pode me apontar para a seção direita na documentação ?

Usando Sprint.NET , eu estou combinando arquivos XML remotos em um único contexto de aplicação onde os objetos do motor são separar os objetos de regras de negócios. O problema é algumas das regras de negócios valores são, não objetos, que são necessários pelo <property> e <constructor-arg> nós no xml motor:

<object name="Engine">
    <constructor-arg index="0" value="business rule" />
</object>

De qualquer referência a uma propriedade de outro (atributo uso expression vez de value?) Objeto ou talvez alguma lista de nome / valor especializado (por exemplo, a versão de Primavera da <appsettings>, qualquer que seja) iria funcionar.

Foi útil?

Solução

Encontrei! A partir da página 41 do PDF Spring Framework (versão 1.2.0 M1) em "O contêiner IoC" capítulo:

5.3.8. Definir uma referência usando os membros de outros objetos e classes.

Esta seção detalha os cenários de configuração que envolvam a definição de propriedades e argumentos do construtor usando o membros de outros objetos e classes. Este tipo de cenário é bastante comum, especialmente quando se lida com o legado classes que você não pode (ou não) mudar para acomodar alguns de Spring.Net convenções ... considere o caso de uma classe que tem um argumento construtor que só pode ser calculado vai dizer, um base de dados. o alças MethodInvokingFactoryObject exatamente este cenário ... Vai permitir-lhe para injetar o resultado de uma invocação método arbitrária numa construtor (como um argumento) ou como o valor de um setter propriedade. Similarmente, PropertyRetrievingFactoryObject e FieldRetrievingFactoryObject permitem que você para recuperar valores de outro propriedade ou campo de valor do objeto. Essas classes implementar o Interface IFactoryObject que indica a Spring.NET que este objeto é em si uma fábrica eo fábricas do produto, e não a fábrica em si, é o que será associado com a identificação do objeto. objetos de fábrica são discutidos em ???

Esta é 5.3.9.1 no documentação online mais recente .

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