我正在使用CompositionContainer
来获取接口的实现,但是由于某些原因它们无法正常工作。我有一个简单的设置。
一个接口:
interface IDataInfo
{
}
具体课程:
[Export(typeof(IDataInfo))]
[ExportMetadata("Order", 1)]
class Customer : IDataInfo
{
public string CustomerName { get; set; }
public string Product { get; set; }
}
元数据接口:
public interface IOrderMetadata
{
[DefaultValue(Int32.MaxValue)]
int Order { get; }
}
用于获取程序集以添加到目录的类
class SystemInfoProvider
{
}
我期望下面一行返回接口的实现,但不返回任何内容,我的意思是Count = 0。
var dtos = container.GetExports<IDataInfo, IOrderMetadata>().OrderBy(reader => reader.Metadata.Order);