У меня есть 3 основных таблицы - Picture, Album and Collage
. Collage
и Album
могут иметь 1-много изображений. Снимки не обязательно должны быть в Album
для добавления в Collage
.
Чтобы определить их отношения, у меня есть AlbumPicture
и CollagePicture
таблицы.
Моя проблема возникает, когда я пытаюсь добавить уже загруженную картинку в Collage
и, следовательно, в таблицу CollagePicture
. Выдает ошибку нарушения первичного ключа на PK_Picture
, поскольку изображение уже существует.
CollagePictures.InsertOnSubmit(new CollagePicture {Collage = CollagePicture = existingPic});
Мне нужно добавить одну запись в CollagePicture
для существующей картинки и новую Collage
. Можно ли как-нибудь сказать linq не добавлять изображение, если оно уже существует?
Я новичок в Linq и все еще учусь.
EDIT:
извини, если мне было непонятно.
Я назначаю PK для Picture как GUID при загрузке изображений. В CollagePicture у меня уже есть эта картинка с другим коллажем
, например
CollagePictureId [PK]= 1
CollageId=1
PictureId = 1234567890123456
Теперь я хочу добавить одно и то же изображение с другим CollageId скажем, 2. Когда я пытаюсь добавить что-либо в CollagePicture
, он пытается добавить и в таблицу Picture
. и тогда я получу исключение. Надеюсь, это прояснит ситуацию.