Я учу Spring.Net. Я сделал небольшой пример, чтобы понять автозапуск тега, но он не работает. Ниже мои классы:Тэг Autowire не работает
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spring.Context;
using Spring.Context.Support;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
IApplicationContext context;
context = new XmlApplicationContext("spring.xml");
Texte texte = null;
texte = (Texte)context.GetObject("texte");
texte.print();
Console.ReadKey();
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication6
{
class Texte
{
private String _t;
private Description _desc;
public String T
{
get { return _t; }
set { _t = value; }
}
internal Description Desc
{
get { return _desc; }
set { _desc = value; }
}
public void print()
{
Console.WriteLine("text in object: " + _t);
Console.WriteLine("text description: " + _desc.D);
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication6
{
class Description
{
private String _d;
public String D
{
get { return _d; }
set { _d = value; }
}
}
}
и вот мой файл XML:
<?xml version="1.0" encoding="utf-8" ?>
<objects xmlns="http://www.springframework.net">
<object id = "texte" type = "ConsoleApplication6.Texte" autowire="byName">
<property name = "_t" value = "I am the Text"/>
</object>
<object id = "_desc" type = "ConsoleApplication6.Description">
<property name = "_d" value = "I am the description"/>
</object>
</objects>
Объект Текст инстанциирован но мне кажется, что мой объект Описание не инстанциирован.
Я прочитал документацию, и я проверил всю документацию, я могу найти: http://springindepth.com/book/in-depth-ioc-autowiring.html http://www.berchtel.com/archive/diplomathesis/html/05.4-spring_.net.html
Я также проверил все вопросы StackOverflow, связанные с autowire, но большинство из них связаны с autowire аннотаций (я сделал не пробуйте эту аннотацию).
Есть ли у кого-нибудь из вас идея о том, где проблема?
Спасибо за ваш ответ, я изменил мой файл XML с recommandations и я установил мой класс Описание, как Открыто, но ошибка все тот же: «Ссылка на объект не установлена в экземпляр объекта». (ошибка возникает в строке «Console.WriteLine» («текстовое описание:« + _desc.D »;») –
Я добавил пример к моему ответу. – Marijn
Большое спасибо @Marijn! он работает, я думаю, моя ошибка: 1. Описание не было опубликовано 2. В моем XML-файле я указал частный атрибут, вместо этого я должен был указать методы общего доступа еще раз спасибо! –