Каков формат файла определения контекста XML, который будет читать XmlApplicationContext(sFileName)?
-
08-07-2019 - |
Вопрос
Все примеры, которые я могу найти в Интернете, используют режим App.Config для указания определения контекста, полученного с помощью
contextToGetSprungObjects = ContextRegistry.GetContext(contextname)
я хочу использовать
contextToGetSprungObjects = new XmlApplicationContext(sXmlFileName)
(Я вызываю DLL (которой нужен Spring.net) из другого исполняемого файла (MsWord), поэтому подход app.config отсутствует).Я попытался проникнуть в MyDll.dll.config..не летал.При использовании подхода XmlApplicationContext для чтения из указанного XML-файла я получаю следующую ошибку:
{"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>"}
Это наводит меня на мысль, что этим двум подходам нужен XML-файл в бутылке другой формы.Я искал повсюду, но схема необходимого XML ускользает от меня..все, что я могу найти, использует X.exe.config или Web.config.Может ли кто-нибудь указать мне на правильное определение контекста XML для Spring.net?
<spring>
<context>
<context name="MyApplication">
<resource uri="file://Resources/MyApplicationContext.xml"/>
</context>
</context>
</spring>
Я думаю, что это соответствующий раздел app.config, который я хочу, чтобы Spring.net прочитал.
Решение
Документы Spring.NET — хорошее упражнение в борьбе с болью
вы ознакомились с вводным разделом "Основы — контейнеры и объекты"справочных документов?Имхо главы 5.2.1 «Метаданные конфигурации» и 5.2.2 «Создание экземпляра контейнера» довольно ясно демонстрируют, чего вы пытались достичь.Какие у вас были болевые точки?Будем рады вашим предложениям по улучшению!
Я также хотел бы предложить вам опубликовать соответствующие вопросы о Spring для .NET на нашем сайте. форумы сообщества - там больше шансов получить ответы на свои вопросы.
аплодисменты Эрих
Другие советы
Наконец-то преодолел это препятствие. XmlApplicationContext не читает xml промежуточного отображения в app.config ... он непосредственно читает содержимое, указанное как элемент ресурса. Он не будет читать формат app.config, который используется классом ContextRegistry в Spring.net. Документы Spring.net - хорошее упражнение от боли.
context = new XmlApplicationContext("file://Resources/MyApplicationContext.xml");
где этот xml имеет следующую форму.
<?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>