Sobre la base de la respuesta de Vadim, me encontré con lo que escribió no funcionó exactamente para mi situación, por lo que utiliza en su lugar:
Dim connectionSettings As New ConnectionStringSettings("mySQLite", ConnectionStringHelper.MyConnectionString)
Dim dummyVirtualPath As String = "/MyApp"
Dim virtualDirMap = New VirtualDirectoryMapping(Server.MapPath("~"), True)
Dim webConfigFileMap = New WebConfigurationFileMap()
webConfigFileMap.VirtualDirectories.Add(dummyVirtualPath, virtualDirMap)
Dim mappedConfigFile = WebConfigurationManager.OpenMappedWebConfiguration(webConfigFileMap, dummyVirtualPath)
Dim config As System.Configuration.Configuration = mappedConfigFile WebConfigurationManager.OpenWebConfiguration(Server.MapPath("~") & "/")
Dim csSection As ConnectionStringsSection = config.ConnectionStrings
If csSection.ConnectionStrings("mySQLite") IsNot Nothing AndAlso csSection.ConnectionStrings("mySQLite").ConnectionString <> connectionSettings.ConnectionString Then
csSection.ConnectionStrings("mySQLite").ConnectionString = connectionSettings.ConnectionString
config.Save()
ConfigurationManager.RefreshSection(csSection.SectionInformation.Name)
End If
En caso de que alguien más está probando lo que estoy intentando y descubriendo esto, el propósito de hacer esto fue obtener SimpleMembershipProvider
, que hereda de ExtendedMembershipProvider
, para trabajar con SQLite. Para hacer eso, he creado las tablas manualmente por este enlace: SimpleMembershipProvider in MVC4, y luego se usa este comando en mi Global.asax
de archivo Application_Start
rutina:
WebSecurity.InitializeDatabaseConnection(ConnectionStringHelper.MyConnectionString, "System.Data.SQLite", "Users", "UserID", "Email", False)
cual resulta que no requería que yo en realidad re-escribir mi web archivo .config en absoluto. (También hubo muchos cambios de web.config que tuve que hacer, pero eso está aún más fuera del alcance de esta pregunta.)
gracias Voy a intentar esto. – aron
¡Gracias! Esto es perfecto. – BigJoe714
muchas gracias amigo – codebased