我正在尝试获取将要实现该接口的类的FullName。我使用StandardKernel
Kernel = new StandardKernel();
但我似乎无法得到我想要的信息,因为
Kernel.GetBindings(type).FirstOrDefault().GetProvider() //ignore the pos. null for this example
GetProvider()
需要一个IContext
我无法弄清楚从哪里获取它...
答案 0 :(得分:2)
奇怪的解决方案,但在一个简单的情况下为我工作:
var kernel = new StandardKernel();
kernel.Bind<IEnumerable>().To<Array>();
var kernelTarget = kernel.GetBindings(typeof(IEnumerable)).First ().ProviderCallback.Target;
var typeName = kernelTarget.GetType().GetField("prototype").GetValue(kernelTarget).ToString();