Vb.net SubmitChanges()更新bin文件夹中的数据库

Vb.net SubmitChanges()更新bin文件夹中的数据库,vb.net,linq-to-sql,local-database,submitchanges,Vb.net,Linq To Sql,Local Database,Submitchanges,我的代码和Linq to sql功能SubmitChanges正在工作,但是当使用本地数据库时,bin文件夹中的数据库副本会更新,而不是主数据库。因此,更改不会显示在新查询上。如果我重新连接数据库,但不将其作为local加载,则会出现相同的问题-主数据库不会更新,但现在我无法确定是哪个数据库(与此相关) 本地数据库的什么设置,或者如何使用非本地数据库来显示对数据库的新查询所做的更改 Dim DATA As New lnqPolarisDataContext Dim newBOOK

我的代码和
Linq to sql
功能
SubmitChanges
正在工作,但是当使用
本地数据库时,
bin
文件夹中的数据库副本会更新,而不是主数据库。因此,更改不会显示在新查询上。如果我重新连接数据库,但不将其作为
local
加载,则会出现相同的问题-主数据库不会更新,但现在我无法确定是哪个数据库(与此相关)

本地数据库的什么设置,或者如何使用非本地数据库来显示对数据库的新查询所做的更改

Dim DATA As New lnqPolarisDataContext
        Dim newBOOK As New BOOK()
        newBOOK.ID = 14
        newBOOK.LEG = 11
            newBOOK.P_C = "C"
            newBOOK.STRATEGY = "STRADDLE"
            newBOOK.STRIKE = 999
            newBOOK.CONTRACT = "XXX"

            DATA.BOOKs.InsertOnSubmit(newBOOK)
            DATA.SubmitChanges()

   ... new query doesn't show these changes

也许是最好的方法?

我认为真正的解决方案是将数据库放在它所属的服务器上-毕竟,SQL server是基于服务器的解决方案,而不是基于文件的“数据库”

  • 安装SQL Server Express(您已经完成了安装)

  • 安装SQL Server Management Studio Express

  • 在SSMS Express中创建数据库,并为其指定一个逻辑名称(例如,
    YourDatabase

  • 使用其逻辑数据库名称连接到它(在服务器上创建时提供),不要乱动物理数据库文件和用户实例。在这种情况下,您的连接字符串类似于:

    Data Source=.\\SQLEXPRESS;Database=YourDatabase;Integrated Security=True
    
    其他一切都和以前一样


  • 有关更多背景信息,请参阅亚伦·伯特朗的精彩博客。

    谢谢马克,我来看看。我还没有使用基于服务器的数据库。