Linq To Sql Entity обновлен из триггера - PullRequest
0 голосов
/ 02 мая 2010

У меня есть таблица с именем Address. У меня есть триггер для вставки в эту таблицу, который выполняет некоторые пространственные вычисления для адреса, который определяет границы соседства.

address = new Address
            {

                Street = this.Street,
                City = this.City,
                State = this.State,
                ZipCode = this.ZipCode,
                latitude = this.Latitude,
                longitude = this.Longitude,
                YearBuilt = this.YearBuilt,
                LotSize = this.LotSize,
                FinishedSize = this.FinishedSize,
                Bedrooms = this.Bedrooms,
                Bathrooms = this.Bathrooms,
                UseCode = this.UseCode,
                HOA = this.HOA,
                UpdateDate = DateTime.Now

            };

            db.AddToAddresses(address);
            db.SaveChanges();

В базе данных ясно видно, что триггер запустился и обновил окрестность в таблице адресов для строки. Я попытался просто перезагрузить эту запись, чтобы получить назначенный идентификатор, как это:

address = (from a in db.Addresses where a.AddressID == address.AddressID select a).First();

В отладчике я ясно вижу, что адрес. Идентификатор адреса правильный, объект не обновляется в памяти. Есть ли какое-то решение для этого?

1 Ответ

0 голосов
/ 02 мая 2010

Я добавил

db.Refresh(System.Data.Objects.RefreshMode.StoreWins, address);

прямо перед

address = (from a in db.Addresses where a.AddressID == address.AddressID select a).First();

и это решило мою проблему.

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