Ninject - 绑定数据树

时间:2017-05-09 08:02:26

标签: c# .net ninject

我最近有机会开始使用Ninject,更普遍的是使用IOC。我遇到了一个特定的问题,这需要我花一些时间来解决。

我有一个A类,其中包含同一类和父母的子女。

class ClassA : IClassA
{
     ICollection<IClassA> childrens;
     IClassA parent;
}

此类的特定实例将被实例化,并且我想使用Ninject来定义我的绑定,因此在调用A的特定实例时,将填充正确的子级和父级。 为了实现这一目标,我创建了一个XML文件,用于描述父项和子项之间的关系。我只是以递归方式解析XML并创建我的绑定。

现在我的问题是在构建这个绑定树时,如何让ClassA实例的子节点继续存在。 在某些时候我需要调用childrens.Add(kernel.Get(&#34; SpecificInstanceName&#34;)),但在使用Ninject调用父项时不会保留。

示例:我有一个名为Main的ClassA实例,有两个孩子,我们称之为FirstChildren和SecondChidren。 我将使用名称定义我的绑定。 我想在调用kernel.Get(&#34; Main&#34;)时得到ClassA&#34; Main&#34;的实例。已经有它的财产儿童包含实例&#34; FirstChildren&#34;和#34; SecondChildren&#34;。

这是我第一次发帖,我希望我已经足够清楚了。

0 个答案:

没有答案