C #, LINQ to SQL, вставка данных в объединенные таблицы - PullRequest
0 голосов
/ 26 мая 2011

это мой первый вопрос здесь и ответ будет высоко оценен,

У меня есть две таблицы: -

Table1:     EMPLOYEE{eid int(PK,identity), ename varchar}
Table 2:    Sales {sid int(PK,identity), eid int(FK), totalsales money}

Я хочу вставить данные, используя LINQ до sql.

заранее спасибо

Ответы [ 2 ]

2 голосов
/ 26 мая 2011

Ну, если у вас есть надлежащие внешние ключи, вы можете сохранить все сразу, как это (наизусть, поэтому, пожалуйста, проверьте правильность написания, но вы должны получить работу)

Using (db = new yourdatacontext())
{
  Employee em = new Employee;
  em.name = "somename";

  db.Employees.InsertOnSubmit(e);

  Sales s = new Sales();
  s.totalsales = 10000;
  em.Sales.Add(s)

db.Submitchanges();

}

Важно помнить, что вам не нужно связываться с PK, иностранными ключами или удостоверениями. Linq-to-sql позаботится обо всем, что за вас. Также транзакция хранится в представлении. В этом красота Linq-to-sql

0 голосов
/ 26 мая 2011

Скорее всего, это будет что-то вроде:

Employee employee = new Employee();

//populate Employee object

db.Employees.Add(employee);

РЕДАКТИРОВАТЬ: Затем после добавления сотрудника заполните объект Sales и добавьте его в БД:

Sales sales = new Sales();

sales.eid = employee.id;

db.Sales.Add(sales);

т.е. сначала сохраните в таблице Employee, чтобы получить сгенерированный идентификатор.

Для получения дополнительной информации Блог ScottGu объясняет это довольно хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...