2016-01-03 6 views
1

Мой код и функция Linq to sql работают SubmitChanges, но при использовании local database копия базы данных в папке bin обновляется, а не первичная база данных. Таким образом, изменения не отображаются в новом запросе. Если я повторно подключаю базу данных, но не загружаю ее как local та же проблема - первичная база данных не обновляется, но теперь я не могу понять, какой из них (tks для этого question).SubmitChanges() обновляет базу данных в папке bin

Какие настройки для локальной базы данных или как я использую нелокальную базу данных для отображения изменений в новом запросе базы данных?

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 

возможно this - лучший способ?

ответ

1

реальное решение, на мой взгляд было бы поставить свою базу данных на сервере, где она принадлежит - в конце концов, 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 
    

    и все остальное точно же, как раньше ...

Смотрите также отличный пост в блоге Аарона Бертрана Bad habits to kick: using AttachDbFileName более справочная информация.

+0

Спасибо Marc_s Я посмотрю. Я еще не работал с db на сервере. – Zeus