Во всех примерах, которые я могу найти в Интернете, используется режим 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 прочитал.





Наконец преодолел это препятствие. 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>
Spring.NET docs are a good exercise in pain
Вы ознакомились с вводным разделом "Основы - контейнеры и объекты" справочной документации? Imho главы 5.2.1 «Метаданные конфигурации» и 5.2.2 «Создание экземпляра контейнера» довольно ясно демонстрируют, чего вы пытались достичь. Какие у вас были болевые точки? Будем рады вашим предложениям по улучшению!
Я также хотел бы предложить вам публиковать вопросы, относящиеся к Spring для .NET, в нашем форумы сообщества - там больше шансов получить ответы на свои вопросы.
ваше здоровье, Эрих
Я ожидал, что в документации для XmlApplicationContext (или любого такого класса парсера в целом) будет какая-то ссылка или указатель на формат файла, который он ожидает. пример также может быть достаточным из-за отсутствия ответов на этот пост. Я бы сказал, что это принесет пользу группе людей.