c# - 我应该在 SqlClr 中运行 F# 吗?

标签 c# sql-server f# sqlclr

我需要在 Sql 中运行 .Net 代码,我正在尝试在 F# 和 C# 之间做出决定。 现在我在 F# 中编写越来越多的代码,所以如果不是太不切实际,我希望它是 F#。

是否可以强制 VS2010 以与 C# 项目相同的方式将我的 F# 程序集(及其引用)部署到 Sql Server?

您会推荐/不推荐在 Sql 中运行 F# 吗?为什么?

编辑: 我同意语言更好,这不是问题。我主要想知道是否有人有在 SqlClr 中使用 F# 的经验,特别是这些工具是否可以提供简单的开发工作流,即在 VS2010 中部署。

编辑 2: 我正在试验这个,手动注册是非常痛苦的。除了 CREATE ASSEMBLY 之外,您还必须注册每个函数、sp、聚合等。如果它们存在,您还必须先按正确的顺序删除它们,以免出现 DROP ASSEMBLY failed because ' Nibbler' 被对象 'Hello' 引用。

然后我有了使用 C# 项目作为前端并让该项目引用 F# 项目的想法,只是为了自动处理所有这些部署。事实证明,您只能引用其他 C#/VB Sql Clr 项目或已在 Sql 中引用的程序集。不过,这仍然可以简化部署,因为所有功能的创建/删除等都将自动处理。然后,为了从测试部署到生产,我只需要从我的测试环境中注册的所有内容生成脚本。

附言。我还尝试摆弄 .fsproj 文件,与 C# Clr 项目的 .csproj 进行比较,以使部署无济于事。

最佳答案

如果您在使用 FSharp.Core 和 SQL CLR 上下文中的其他引用时遇到问题,您可以尝试 --standalone compiler flag使外部引用嵌入到您部署到 SQL Server 的程序集中。

关于c# - 我应该在 SqlClr 中运行 F# 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5353009/

相关文章:

c# - Xamarin PCL 中缺少 System.Timer

c# - MVC 中每个请求的带有 Owin DbContext 的 Entity Framework

c# - MSBuildTaskHost.exe 已停止工作

sql-server - 如何在 SQL Server 2008 中将图像字段中的 varbinary 值更新为 null?

f# - 由于 F# 库中的 DLL 加载问题,NUnit 测试失败

f# - 在自托管的F#脚本中设置ExitCode

c# - 在 C# 中为包含特殊字符的 Blob 路径生成 SAS token 时出现问题

sql-server - 如果值包含这些字母,那么

sql - 将表重命名为 sp_help 并且无法将其重命名回来

f# - 为什么 F# 不能推断出这个语句的类型?