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
F# SqlDataConnection的语法_F#_Type Providers - Fatal编程技术网

F# SqlDataConnection的语法

F# SqlDataConnection的语法,f#,type-providers,F#,Type Providers,使用app.config文件中的连接字符串名称时,定义SqlDataConnection类型提供程序的语法是什么。我有一个包含两个项目的解决方案。主项目是MVC5项目,第二个是F#项目。在f#项目中,我定义了一个带有数据库连接字符串的app.config文件,并将我的SqlDataConnection定义为: SqlDataConnection<ConnectionStringName="dbname", ConfigFile="app.config"> SqlDataConnec

使用app.config文件中的连接字符串名称时,定义SqlDataConnection类型提供程序的语法是什么。我有一个包含两个项目的解决方案。主项目是MVC5项目,第二个是F#项目。在f#项目中,我定义了一个带有数据库连接字符串的app.config文件,并将我的SqlDataConnection定义为:

SqlDataConnection<ConnectionStringName="dbname", ConfigFile="app.config">
SqlDataConnection

在编写f#代码时,一切似乎都连接正确,因为我能够在数据库表上获得intellisense,但一旦我运行/调试站点,就会出现一个错误,表明数据提供程序正在主项目中查找连接字符串。我在这里遗漏了什么?

我看到的所有示例都为类型提供程序指定了一个字符串

尝试:

SqlDataConnection

本质上,这与您在app.config文件中使用的语法相同。

因此,一旦您运行/调试站点,数据提供程序就会尝试在主项目的Web.config中查找连接字符串。因此,我将F#项目中的app.config重命名为Web.config,并确保主项目的Web.config文件中也列出了相同的连接字符串。这样,我在编码时似乎可以访问模式,当项目运行时,它会从主项目中提取连接字符串。这对我来说是一个有效的解决方案,但如果有人能对此有更多的了解,请这样做。新语法是:

SqlDataConnection<ConnectionStringName="dbname", ConfigFile="Web.config">
SqlDataConnection

是的,我也看到了。有关我的解决方案,请参阅我的更新。我认为我的问题在于我的F#项目不是启动项目,因此类型提供程序似乎在那里查找配置文件。目前,包括语法在内的一切都在为我工作。酷:-)也许你应该在这里为你的问题创建一个“正式”答案,这样这个问题就不会被搁置。
SqlDataConnection<ConnectionStringName="dbname", ConfigFile="Web.config">