首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何仅使用.NET设计三层F#企业应用程序?

如何仅使用.NET设计三层F#企业应用程序?
EN

Stack Overflow用户
提问于 2014-11-18 13:39:34
回答 3查看 480关注 0票数 1

我将在一个复杂的金融交易领域承担一个重要的商业应用程序的设计。不开放讨论的技术是:

  • 只有MS技术栈(例如.NET 4.5、SignalR、WCF)
  • Server作为数据库
  • WPF桌面客户端(尽管web客户端可能会在以后添加)
  • F#作为编程语言(C#有可能,但前提是F#不合适)

我想使用一种标准的三层体系结构,大部分代码位于中间层,用于业务规则、逻辑、模型等。UI代码应该只是为了丰富用户体验,也许是为了对用户输入进行一些简单的语法验证。

有谁有使用F#构建三层企业应用程序的经验吗?

F#的典型MS架构蓝图如何适用?

FYI:选择F#是因为以前成功地使用Haskell来建模复杂的领域。除了广泛记载的功能语言的优点之外。

EN

回答 3

Stack Overflow用户

发布于 2014-11-18 23:14:25

你不应该有太多的问题。

您可以使用几种技术来访问SQL,从ADO .NET、实体框架或Dapper等常用的选择到围绕这些提供程序(包括SqlClientSQLProvider )的SQL类型提供程序。

从WPF的角度来看,您有两个选择--第一个选择是标准的WPF XAML方法,它将迫使您在代码隐藏中使用C#/ VB .NET项目,然后在F#中使用ViewModel (和下面的所有内容)。或者,您可以使用XAML类型提供程序之一,例如FsXaml,它允许您在F#中拥有一切。

对于使用诸如WCF、OData和XML等数据,有一组丰富的类型提供程序,与C#和VB .NET中的标准代码生成方法相比,它们的痛苦要小得多。

不要忘记测试框架--您也可以使用通常的测试框架,比如NUnit和XUnit,以及围绕它们的一组包装器,比如FSUnit和testing,它们给您提供了更多的功能。

票数 3
EN

Stack Overflow用户

发布于 2014-11-18 14:01:23

我认为这个问题太宽泛了,但你可以在fsharp.org找到一个好的开端

您可以从'Guides'-'Enterprise‘部分开始,在这里您可以找到关于F#企业应用程序架构的建议。还请参阅fsharp社区项目,在那里您可以找到类型提供程序和其他有用的库。

您当然可以在3层中的任何一层使用F#,但它也能很好地与其他.NET语言一起使用。例如,对于WPF用户界面层,可以使用基于C#的XAML视图和F# ViewModel。

票数 2
EN

Stack Overflow用户

发布于 2014-11-19 06:24:54

我知道在列出的每种技术中以及在每个业务领域(逻辑、规则和模型)中都成功地使用了F#。我建议您能够很好地判断Haskell经验带来的功能好处和考虑因素。

你可以看到一些证明到这里来。正如您所理解的,F#的一些真正有趣的用途(建模等)的幕后人员不允许公开说他们甚至使用了F#,更不用说他们使用它做什么了。这条规则有一些例外,偶尔你会找到一张白皮书。试着去参加用户组会议。

具体来说,您希望在F#中实现哪些模型?开个玩笑。我不指望有答案;-)有点像这样。

因此,并不是真正深入建筑领域的地方。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26995743

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档