首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MEF目录目录

MEF目录目录
EN

Stack Overflow用户
提问于 2016-03-19 20:22:41
回答 1查看 549关注 0票数 1

我有一个具有以下结构的解决方案:

project.Model

project.Builder

project.Unit测试

在构建器项目中,它应该使用MEF创建一个Model实例。因此,在Builder类构造函数中,我希望它有一个容器来保存仅与构建模型相关的部分(作为关注点的分离)。

目前,我使用的目录编目如下:

代码语言:javascript
复制
var path = Environment.CurrentDirectory;
var catalog = new DirectoryCatalog(path + @"\Builder\bin\Debug");

这样,在单元测试项目中,我就可以在编写单元测试函数时使用这个容器。有没有更好的方法使构建器容器只包含构建器项目输出目录(bin\debug)中的dll。我尝试过使用:

代码语言:javascript
复制
var directory = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
var catalog = new DirectoryCatalog(directory);

但是这会使目录扫描单元测试项目的输出目录,这些项目造成了很多问题,而不是我希望目录扫描的地方。

有没有比我现在做的更正确的方法?提前谢谢。

EN

回答 1

Stack Overflow用户

发布于 2016-03-20 01:39:40

我更喜欢使用和AssemblyCatalog -并从生成器项目添加静态引用到模型项目,这样您就可以避免所有文件夹问题-扫描整个文件夹,部署期间目录结构更改,同一文件夹中不同版本的程序集,等等。

代码语言:javascript
复制
var catalog = new AssemblyCatalog(typeof(YourModelType).Assembly);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36101674

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档