如何在.NET Core中管理项目的程序集?
我通过VS Code中的dotnet new webapi
命令创建了一个WebAPI项目。
现在,我想知道如何在项目中管理程序集。这意味着我希望能够检查项目中的每个文件属于哪个程序集。我想更改每个文件所属的程序集。而且我希望能够创建一个新的程序集并将项目文件添加到其中。我该怎么办?
我相信,只有一个地方可以进行项目组装管理。但是我找不到它。
UPDATE
在发表评论后,我决定提供一种需要管理程序集的情况。
我正在学习AutoMapper。在this教程中,有以下示例:
// Scan for all profiles in an assembly
// ... using instance approach:
var config = new MapperConfiguration(cfg => {
cfg.AddMaps(myAssembly);
});
var configuration = new MapperConfiguration(cfg => cfg.AddMaps(myAssembly));
// Can also use assembly names:
var configuration = new MapperConfiguration(cfg =>
cfg.AddMaps(new [] {
"Foo.UI",
"Foo.Core"
});
);
// Or marker types for assemblies:
var configuration = new MapperConfiguration(cfg =>
cfg.AddMaps(new [] {
typeof(HomeController),
typeof(Entity)
});
);
在此示例中,我可以轻松检查文件所属的程序集的名称。从这个示例中我还可以看出,可以为同一项目中的不同文件使用不同的程序集(因为HomeController
和Entity
类在同一项目中,但是在不同的程序集中)。
NB
我对人们对SO的行为感到非常困惑。如果以前未在评论部分中要求提供详细信息,为什么我会因未提供详细信息而获得两票赞成?恕我直言,这很粗鲁,没有任何根据。
我认为文件的含义实际上是一种类型。
您可以通过这种方式获取类型:
var type = typeof(HomeController);
以及这种类型的汇编:
var assembly = Assembly.GetAssembly(type);
所以在一起:
var type = typeof(HomeController);
var assembly = Assembly.GetAssembly(type);
更多信息是provided here。