gpt4 book ai didi

.net - 将面向 .NET 3.5 的 MEF 部件与面向 .NET 4.0 的应用程序混合

转载 作者:行者123 更新时间:2023-12-01 09:10:04 25 4
gpt4 key购买 nike

Managed Extensibility Framework既是一个独立项目(目前针对 .NET 3.5),也是 .NET 4.0 框架的一部分。

假设我创建了面向 .NET 3.5 且包含 MEF 部件的程序集。这些程序集将引用 System.ComponentModel.Composition.dll 的独立版本。

现在假设我创建了一个面向 .NET 4.0 且支持 MEF 的应用程序。此应用程序将引用 .NET 4.0 框架附带的 System.ComponentModel.Composition.dll。我可以在此应用程序中使用上述 MEF 部件吗?

最佳答案

不幸的是,这不起作用,因为您只能通过构建 codeplex drop 生成 3.5 版本的 System.ComponentModel.Composition.dll,并且没有使用与官方 4.0 版本相同的 key 签名,因此 CLR 将同时加载两者程序集并将属性视为两个不同的属性。因此,假设应用程序使用 .Net 4.0 版本的 System.ComponentModel.Compsition.dll 并构造 Catalog/Container,它只会找到标记有 .Net 4.0 版本的属性的部分。

关于.net - 将面向 .NET 3.5 的 MEF 部件与面向 .NET 4.0 的应用程序混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1958067/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com