共享目录fö;r一个C#和一个F#项目

共享目录fö;r一个C#和一个F#项目,c#,.net,f#,C#,.net,F#,所以我知道你不能在一个项目中混合语言。然而,我工作中的当前解决方案是,对于每个逻辑项目,分别使用C#和F#编写的实现有单独的子目录和名称空间。这有点烦人。我计划至少给它们相同的名称空间,但在我考虑的时候,我意识到如果它们可以存储在同一个目录中会更方便 然后会有包含.csproj和.fsproj文件以及.cs和.fs源文件的目录--这会是一个技术问题吗?这是一个奇怪的想法,就像将两个C#项目放在同一个目录中会很奇怪一样。即使它能起作用,但它主要是为了掩盖真相,那么为什么一开始就这么做呢 您可以让它

所以我知道你不能在一个项目中混合语言。然而,我工作中的当前解决方案是,对于每个逻辑项目,分别使用C#和F#编写的实现有单独的子目录和名称空间。这有点烦人。我计划至少给它们相同的名称空间,但在我考虑的时候,我意识到如果它们可以存储在同一个目录中会更方便


然后会有包含.csproj和.fsproj文件以及.cs和.fs源文件的目录--这会是一个技术问题吗?

这是一个奇怪的想法,就像将两个C#项目放在同一个目录中会很奇怪一样。即使它能起作用,但它主要是为了掩盖真相,那么为什么一开始就这么做呢

您可以让它在物理上将两个项目放在同一个目录中的情况下工作,但我希望您在构建工具链时会遇到麻烦-每个程序集都是自己的项目,每个程序集都是自己的目录的想法对于.NET项目的结构非常重要,例如,工件被输出到
/bin
/obj
子目录中,这些子目录通常会被不加区分地清理


你最终会与工具链发生冲突,即使你赢了,我也不能诚实地看到将这些项目混合在一起的便利性。

我同意这一点。这在技术上似乎是可能的,但实际上并不可取。回答得好——谢谢。我个人经常使用这个代码库而不使用“常规”工具,这就是为什么我在这方面与大多数人有不同的观点。但当然,我的同事大多使用传统的工具,我不想让事情变得更复杂。