相关疑难解决方法(0)

Visual Studio一个项目有多个dll作为输出?

我正在编写一个支持插件的项目.由于许多插件相对较小(只有一个源文件/类),我希望将它们全部放在visual studio中的一个项目中,但为了成功完成这个,我需要将每个源文件/类编译到其中自己的dll文件,这可能使用visual studio吗?

如果使用visual studio无法做到这一点,是否可以使用其他构建系统,同时仍然使用visual studio进行编码和调试?

目前我已经将插件项目输出类型设置为console,并编写了一个main()方法,该方法将源目录中的所有.cs文件编译为dll并将其复制到正确的目录中.然后我将该控制台应用程序设置为插件项目的后期构建事件.它有效,但它似乎是一个非常丑陋的黑客.

使用visual studio 2010.

c# visual-studio

26
推荐指数
2
解决办法
2万
查看次数

如何在不执行构建的情况下检索@(TargetOutputs)

我正在实现一个MSBuild框架来驱动构建和部署作为层次结构组织的许多项目.

<Target Name="_CoreBuild">
  <MSBuild Projects="@(Project)" Targets="Build" Properties="Configuration=$(Configuration)">
    <Output TaskParameter="TargetOutputs" ItemName="CompiledAssemblies" />
  </MSBuild>
</Target>
Run Code Online (Sandbox Code Playgroud)

为了实现正确的Clean/Clobber逻辑,我想检索在使用当前选项执行构建时将编译的文件列表.

<Target Name="_CoreClobber" DependsOnTargets="_CoreClean">
   <!-- How to retrieve @(CompiledAssemblies) as if we were
        building @(Project) and retrieving the @(TargetOutputs) item group.
     -->
</Target>
Run Code Online (Sandbox Code Playgroud)

我已经尝试了各种方法,包括创建自定义任务,在其中我构建了一个自定义项目文件,用于导入我想从中检索属性/项目的原始项目.但这并没有给我可靠的价值.

有没有办法检索MSBuild项目的TargetOutputs项目组而不实际执行构建?

msbuild itemgroup

5
推荐指数
1
解决办法
2300
查看次数

标签 统计

c# ×1

itemgroup ×1

msbuild ×1

visual-studio ×1