通过asp.net核心中引用的项目使用Fsharp.Sql.DataClient

时间:2017-05-11 06:14:58

标签: f# asp.net-core-mvc fsharp.data.sqlclient

我正在构建一个Asp.net Core(.NET Framework 4.6.2)项目。我添加了一个使用FSharp.Sql.DataClient的引用F#项目。当我从主项目调用F#代码从数据库中检索数据时,我收到此错误:

Keyword not supported: 'name'

这在Asp.net Core之前的项目中完美运行,所以我猜这可能与主项目中的appsettings.json文件中的连接字符串的定义有关,与先前版本中的配置文件相反,以及引用的F#项目中的配置文件。我的sql代码定义如下:

type Select_AllTags =

    SqlCommandProvider<
            "
                select * from article.article_Tag
            ", Admin.connectionName, ConfigFile = Admin.configFile
        >

稍后在代码中调用,如下所示:

Select_AllTags.Create(Admin.connectionString).Execute()

如何使用Asp.net Core开展此工作?

1 个答案:

答案 0 :(得分:0)

由于我的初始代码在之前的DotNet Core应用程序中工作的原因,但现在我必须在运行时调用代码时调用实际的连接字符串。所以这是更新的代码:

let connectionName = "ManagementDb"
let configFile = "web.config"
let runtimeConnectionString = Config.ConnectionStrings.ArticleManagementDb //Using FSharp.Configuration here to grab the connection string

type Select_AllTags =

SqlCommandProvider<
        "
            select * from article.article_Tag
        ", connectionName, ConfigFile = configFile
    >

Select_AllTags.Create(runtimeConnectionString).Execute()