我的项目中有一些 C# (*.cs) 文件需要包含在编译中以及作为源代码与应用程序一起分发(应用程序本身不是开源的)。
目前,我将此类文件的
Build Action
设置为 C# Compiler
,然后使用 Post-build event
将这些文件复制到应用程序目录。在我的场景中,这远非理想,因为这些文件很频繁。在任何情况下,Post-build
都依赖于引用 VS 解决方案/项目路径来访问 *.cs
文件。
似乎没有办法将单个文件与多个
Build Action
相关联。目标是编译这些文件,并在应用程序的Resource Manifest
中以纯 C# 文本形式提供。
我相信很多人会问我为什么要这样做。可以说,这是一个复杂的代码生成场景,应用程序本身使用这些文件,然后将它们呈现给最终用户以作为模板使用(纯文本 C# 代码)。我考虑过反编译,但这太过分了,并且不会保留代码格式。
如有任何建议,我们将不胜感激。
更新: 理解目标的更简单方法。我需要在编译时使用完整的解决方案范围的 Intellisense 上下文编辑文件,并以某种方式在运行时访问相同的源代码。