我使用SQL Server的LocalDB一个网站。
SQL服务器的LocalDB安装和设置过程中创建一个数据库。 共享实例通过创建LocalDBCreateInstance , StartLocalDBInstance和LocalDBShareInstance 。
如果启动实例时,该网站可以成功连接到数据库。
但是,如果实例停止,它不会自动启动。 访问从控制台应用程序的数据库(例如,当停止)导致实例启动。
因此,这似乎是某种许可问题。
应用程序池下的应用程序池的身份运行。 它切换到网络服务或本地系统不能解决的问题,虽然。
应用程序池配置为加载其用户配置文件和“setProfileEnvironment”属性也被设置为true。 (如所描述的,需要两个设置在这里和在这里 )。
我监测与Sysinternal进程监视器对数据库的访问,但未能找到任何“拒绝访问”的条目。
我也试着拨打StartLocalDBInstance从网站本身(在Global.asax)。 该调用成功返回(返回值是S_OK),但实例仍停止。