EntitySet в LINQ to SQL — его использование и удаление

#c# #visual-studio-2010 #linq-to-sql #asp.net-4.0

#c# #visual-studio-2010 #linq-to-sql #asp.net-4.0

Вопрос:

У меня есть пара таблиц в моей базе данных. Один из которых имеет первичный ключ (простой числовой идентификатор), другой имеет этот идентификатор в качестве внешнего ключа.

Первая таблица внезапно получила EntitySet<OtherTable> . Если я добавлю новое OtherTable() к этому, будет ли оно автоматически отправлено в базу данных, и идентификатор будет связан и т.д., Когда я использую SubmitChanges() ?

Во-вторых, отношение не «многие к одному», а «один к одному», соответствующая запись во второй таблице является необязательной и единственной. Как таковой, контейнер типа EntitySet на самом деле не подходит для этих отношений. OtherTable? Было бы более подходящим представлением. Как я могу сообщить LINQ to SQL об этом?

Ответ №1:

Установите Unique = true в свойствах ассоциации. Это должно привести к соотношению 1: 1

Комментарии:

1. Это было не совсем то, но это заставило меня посмотреть в нужном месте — одно из других свойств ассоциации — «много к одному» или «один к одному».