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



我的代码和Linq to sql函数SubmitChanges正在工作,但当使用local database时,会更新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是一个基于服务器的解决方案,而不是一个基于文件的"数据库"。。。。。

  1. 安装SQL Server Express(而且您已经安装了)

  2. 安装SQL Server Management Studio Express

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

  4. 使用其逻辑数据库名称(在服务器上创建时给定)连接到它,并且不要干扰物理数据库文件和用户实例。在这种情况下,您的连接字符串将类似于:

    Data Source=.\SQLEXPRESS;Database=YourDatabase;Integrated Security=True
    

    其他一切都与以前完全一样。。。

另请参阅Aaron Bertrand的优秀博客文章《坏习惯:使用AttachDbFileName获取更多背景信息》。

最新更新