我使用FSharp.Data.Sql通过类型提供程序访问MSSQL数据库。使用它没有问题,但是,当我输入代码时,我感觉VS正在加载所有数据库,这使得Visual Studio进程非常繁重(当我不使用它时,使用2GB RAM而不是几MB)非常慢。
我以为
let [<Literal>] connectionString = """Data Source=XXXX;Initial Catalog=XXXX;User ID=XXX;Password=XX;"""
type sql = SqlDataProvider<ConnectionString = connectionString, DatabaseVendor = Common.DatabaseProviderTypes.MSSQLSERVER, IndividualsAmount = 1000, UseOptionTypes = true >
let ctx = sql.GetDataContext()
你有没有遇到同样的问题?我在官方文件中找不到多少。
谢谢 !
这可能是由于以下问题:
https://github.com/Microsoft/visualfsharp/issues/5929
https://github.com/Microsoft/visualfsharp/issues/5931
https://github.com/Microsoft/visualfsharp/issues/5933
类型提供程序(SDK和编译器中的可扩展点)的实现方式并不适用于长期运行的进程,例如F#编译器服务。具有讽刺意味的是,因为它们主要用于编辑场景,但它就是它的本质。解决这些问题后,您可以预期大多数内存使用问题都会消失。
似乎Visual Studio 2019 Preview 3.0中没有问题。谢谢