0
我有一些沒有接口的第三方類的包裝類,我需要在一個相當固定的C#代碼塊中引用它。如何將對象轉換爲Ninject和C#中的包裝對象?
目前,我有一個靜態函數將實例轉換爲包裝器實例。
示例代碼。
class A
{
public string Name;
}
interface IAWrapper
{
string Name { get; set; }
}
class AWrapper : IAWrapper
{
private A Instance;
public AWrapper(A instance)
{
Instance = instance;
}
public string Name
{
get
{
return Instance.Name;
}
set
{
Instance.Name = value;
}
}
}
我要像
var a = new A() {Name = "bob"};
var wrapped = kernel.wrap<IAWrapper>(a);
的功能中wrapped
將是AWrapper
一個實例,它是通過對a
Instance
不Ninject擁有一個辦法做到這一點?要請求包裝類接口,要包裝的實例,並取回包裝的類?
(我的道歉,我敢肯定有更清晰的方式來問這個,但是如果我知道怎麼問更好,我可能知道答案,以及:))。
你不需要Ninject這個。你可以簡單地調用'new AWrapper(new A {Name =「bob」})''。 – Steven