Вложенные объекты в LINQ

Вопрос, который мне постоянно задают – почему при создании классов данных с использованием дизайнера LINQ to SQL для некоторых классов создаются ссылки для связанных таблиц, а для некоторых нет. Представим базу статей, состоящую из четырех таблиц Journal (PK JournalID), Article (PK ArticleId FK JournalId), Author (PK AuthorId) ArticleAuthor (FK ArticleId, FK AuthorId). При использовании дизайнера…


Транзакции в LINQ

Способ организации транзакции с использованием объекта типа System.Data.Common.DbTransaction: public void ProcessPayment(Guid creditId, Guid debitId, long amount){     DbTransaction transaction;    MyDataContext dc = new MyDataContext();     try    {    // соединение должно быть открыто до инициирования транзакции    dc.Connection.Open();    transaction = dc.Connection.BeginTransaction();     // присвоение транзакции текущему контексту данных    dc.Transaction = transaction;     // выполняем операции    var credit = dc.Credits.Single(c…

2

LINQ: Получение идентификатора добавленной записи

При условии, что для каждой новой записи идентификаторы создаются в базе данных автоматически (например по auto increment или значению по умолчанию NETID()), то объекты LINQ, включая все объекты во вложенных коллекциях, будут автоматически заполнены идентификаторами после успешного сохранения в базе данных. MyDataContext dc = new MyDataContext(); Person prs = new Person();prs.Name = “Jogn Lennon”;prs.Group = “The Beatles”;…

2

Использование сущностей LINQ в службах WCF

Технология LINQ для SQL сама по себе представляет большой интерес, поскольку позволяет проверять схему базы данных и запросы к базе данных на этапе компиляции, избавиться от поддержки хранимых процедур в базе данных и соответствия кода слоя логики хранимым процедурам в базе данных, в результате – сохранить время уменьшив объем ручной работы. В свою очередь технология…

2