carled
asked on
Simply take a row from one datacontext and write it to an identical database table in another datacontext
This worked until a few days ago on my test system, I don't know what circumstances changed but what am I doing wrong please?
I have two databases on my sql server. One is the master database and holds a single row (with 25 columns) per item stored. I have a duplicate table on a separate database on the same server that I use like an archive.
In my code behind, I set up two datacontexts, one pointing to the master database table and one (that uses a different connection string on creation) that points to the archive database table. This all works fine and both datacontexts are available and working.
I then read a single row from masterdatacontext into an entity called, say, "masterRec" and then try and do an "insertonsubmit" on the archive datacontext using the whole "masterRec" I've read. I don't want to have to specify each individual column in the write as this is hideously inefficient and long-winded.
This all worked fine for a week or two, but today it doesn't work. There is an exception about trying to attach an invalid datacontext or something?
All I want to do is read from one datacontext and write the whole row in one go to the archive datacontext. That's not too much to ask is it?
I have two databases on my sql server. One is the master database and holds a single row (with 25 columns) per item stored. I have a duplicate table on a separate database on the same server that I use like an archive.
In my code behind, I set up two datacontexts, one pointing to the master database table and one (that uses a different connection string on creation) that points to the archive database table. This all works fine and both datacontexts are available and working.
I then read a single row from masterdatacontext into an entity called, say, "masterRec" and then try and do an "insertonsubmit" on the archive datacontext using the whole "masterRec" I've read. I don't want to have to specify each individual column in the write as this is hideously inefficient and long-winded.
This all worked fine for a week or two, but today it doesn't work. There is an exception about trying to attach an invalid datacontext or something?
All I want to do is read from one datacontext and write the whole row in one go to the archive datacontext. That's not too much to ask is it?
ASKER
In a nutshell in pseudo-code:
dim altConnString as string = "alternative db connection string"
dim dc1 as db1datacontext = new db1datacontext (default data context)
dim dc2 as db2datacontext = new db1datacontext(altConnStri ng) (same datacontext, different connection string)
dim dc1Rec = (from dc1.table1 where x=y select).firstordefault
if (not dc1Rec is nothing) then
dc2.table1.insertOnSubmit( dc1Rec)
dc2.submitChanges()
end if
Like I say, this worked a week or so back as I got data onto the second database, but whether that was a peculiarity of connection strings or something, I don't know, as the above code now generates:
"An attempt has been made to Attach or Add an entity that is not new, perhaps having been loaded from another DataContext. This is not supported."
dim altConnString as string = "alternative db connection string"
dim dc1 as db1datacontext = new db1datacontext (default data context)
dim dc2 as db2datacontext = new db1datacontext(altConnStri
dim dc1Rec = (from dc1.table1 where x=y select).firstordefault
if (not dc1Rec is nothing) then
dc2.table1.insertOnSubmit(
dc2.submitChanges()
end if
Like I say, this worked a week or so back as I got data onto the second database, but whether that was a peculiarity of connection strings or something, I don't know, as the above code now generates:
"An attempt has been made to Attach or Add an entity that is not new, perhaps having been loaded from another DataContext. This is not supported."
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
2) This question has been open for a while, without response.
3) I like questions that challenge me to find an answer for things that I don't understand.
4) I would like to help you, but it might be easier if you show me what you have tried, and what has failed (exact exceptions).