相关疑难解决方法(0)

从MSBuild项目获取输出文件

是否可以从MSBuild项目中获取所有输出文件的列表?

在一个简单的项目中,我可以做类似的事情

<CreateItem Include="$(OutputDir)**\*">
      <Output ItemName="AllOutputs" TaskParameter="Include"/>
</CreateItem>
Run Code Online (Sandbox Code Playgroud)

但我的项目是更大版本的一部分,所有输出都转到一个共同的位置,我希望能够排除不属于的dll和内容.

有任何想法吗?

.net msbuild build-process

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

谁将app.config复制到app.exe.config?

我正在编写一个游戏开发IDE,用于创建和编译.NET项目(我过去几年一直在研究),并且我正在更新它以生成输出,不仅适用于Windows/Visual Studio,还适用于对于Linux/MonoDevelop(一个非常简单的.NET进程,但仍然需要一些调整).

作为其中的一部分,我发现有必要开始生成app.config文件作为其中的一部分,以将依赖的DLL名称映射到具有<dllmap>元素的Linux依赖项名称.我很担心谁负责将app.config文件复制到输出名称app.exe.config.在Visual Studio项目中,app.config的Build Action通常设置为"None",其设置表明它不会被复制到任何地方,但是当Visual Studio编译项目时它会生成app.exe.config(虽然我有时发现这是不可靠的).当我使用MSBuild构建IDE生成的解决方案文件(用于调试目的)时,MSBuild将app.config复制到app.exe.config.但是当我使用CSharpCodeProvider.CompileAssemblyFromFile编译项目时(自然而然)并没有 像配置文件作为源代码包含("app.config(1,1):错误CS0116:命名空间不直接包含诸如字段或方法之类的成员"),当然它不会将其复制到当我不将它作为输入包括时输出.我是否有责任单独将app.config复制到app.exe.config,或者有更标准的方法吗?

是否硬连线采用第一个*.config文件?在我的IDE中,可以想象app.config文件将被重命名或添加另一个(就像在Visual Studio中一样).我觉得IDE对配置文件有这个秘密行为似乎很奇怪(我认为MonoDevelop在这方面表现相似,因为我找不到配置文件的特殊操作).我不知道它甚至会选择这个秘密行动适用的文件.

.net c# monodevelop visual-studio

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

标签 统计

.net ×2

build-process ×1

c# ×1

monodevelop ×1

msbuild ×1

visual-studio ×1