Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc ASP.NET MVC和F#服务_Asp.net Mvc_F# - Fatal编程技术网

Asp.net mvc ASP.NET MVC和F#服务

Asp.net mvc ASP.NET MVC和F#服务,asp.net-mvc,f#,Asp.net Mvc,F#,我的解决方案分为3个项目。模型、服务和Web。在我的服务项目中,我想在其中使用一些F#特性。使用两个独立的服务项目(一个用于C,一个用于F)的最佳方式是什么?我将如何组织这些项目?我认为最好的选择是将您的服务项目分为: 主C#项目(特别是如果它包含一些设计器生成的代码) 一种实现F#库,使用F#构建,并将重要算法导出为模块或类(具有C#友好界面) 通过这种方式,您可以使用C#设计器(通常不适用于F#),但可以在F#中实现所有复杂的功能。这种方法实际上与我最近在博客上推荐的方法非常相似。主应用

我的解决方案分为3个项目。模型、服务和Web。在我的服务项目中,我想在其中使用一些F#特性。使用两个独立的服务项目(一个用于C,一个用于F)的最佳方式是什么?我将如何组织这些项目?

我认为最好的选择是将您的服务项目分为:

  • 主C#项目(特别是如果它包含一些设计器生成的代码)
  • 一种实现F#库,使用F#构建,并将重要算法导出为模块或类(具有C#友好界面)
通过这种方式,您可以使用C#设计器(通常不适用于F#),但可以在F#中实现所有复杂的功能。这种方法实际上与我最近在博客上推荐的方法非常相似。主应用程序是用C语言编写的,但是所有有趣的功能都被移到F库中,然后从C语言使用

使用
ILMerge
工具合并两个程序集(如另一个参考答案中所述)可能会起作用,但不会给您带来太多好处(C#和F#零件将无法相互引用),因此它本质上与使用C#project+F#库相同