Qual è il formato del file di definizione del contesto xml che XmlApplicationContext (sFileName) leggerà?

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

  •  08-07-2019
  •  | 
  •  

Domanda

Tutti gli esempi che posso cercare online utilizzano la modalità App.Config per specificare la definizione del contesto recuperata da

contextToGetSprungObjects = ContextRegistry.GetContext(contextname)

Voglio usare

contextToGetSprungObjects = new XmlApplicationContext(sXmlFileName)

(sto chiamando in una DLL (che ha bisogno di Spring.net) da un altro eseguibile (MsWord), quindi l'app di app.config è fuori). Ho provato a sgattaiolare in MyDll.dll.config .. non ha volato. Usando l'approccio XmlApplicationContext per leggerlo da un file XML specificato, ottengo il seguente errore

{"Error registering object with name '' defined in 'file [D:\\Work\\Seven\\WordAutomation\\ContentControls\\WordDocument1\\bin\\debug\\MyWPFPlotPopup.dll.config]' : There is no parser registered for namespace ''\r\n<configSections><sectionGroup name=\"spring\"><section name=\"context\" type=\"Spring.Context.Support.ContextHandler, Spring.Core\" /></sectionGroup><section name=\"log4net\" type=\"log4net.Config.Log4NetConfigurationSectionHandler, log4net\" /></configSections>"}

Il che mi porta a credere che i due approcci abbiano bisogno del loro xml in una bottiglia di forma diversa. Ho cercato in alto e in basso ma lo schema per l'xml necessario mi sfugge .. tutto ciò che riesco a trovare utilizza X.exe.config o Web.config. Qualcuno può indicarmi una definizione di contesto XML valida per Spring.net?

<spring>
    <context>
        <context name="MyApplication">
            <resource uri="file://Resources/MyApplicationContext.xml"/>
        </context>
    </context>
</spring>

Penso che questa sia la sezione pertinente dell'app.config che vorrei che Spring.net leggesse

È stato utile?

Soluzione

  

I documenti Spring.NET sono un buon esercizio nel dolore

hai dato un'occhiata alla sezione introduttiva " Nozioni di base - contenitori e oggetti " dei documenti di riferimento? Imho capitoli 5.2.1 "Metadati di configurazione" e 5.2.2 "Istanziare il contenitore" dimostra chiaramente ciò che stavi cercando di ottenere. Quali erano i tuoi punti deboli? Saremo lieti di ricevere i tuoi suggerimenti per il miglioramento!

Vorrei anche suggerirti di pubblicare domande pertinenti di Spring for .NET nei nostri forum della community - è più probabile che le tue domande ricevano risposta lì.

applausi, Erich

Altri suggerimenti

Finalmente eliminato questo ostacolo. XmlApplicationContext non legge l'XML di mapping intermedio in app.config ... legge direttamente il contenuto indicato come elemento di risorsa. Non leggerà il formato app.config, utilizzato dalla classe ContextRegistry in Spring.net. I documenti di Spring.net sono un buon esercizio per il dolore.

context = new XmlApplicationContext("file://Resources/MyApplicationContext.xml");

dove questo xml ha il seguente formato.

<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">
  <object id="Wilma" type="WhatIsSpring.Wilma, WhatIsSpring"/>
  <object id="Fred" type="WhatIsSpring.Fred, WhatIsSpring">
    <property name="TheDependency" ref="Wilma"/>
  </object>
</objects>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top