tag:blogger.com,1999:blog-458002489272917533.post1467176886081033210..comments2024-02-14T14:07:38.890+05:00Comments on Блог Александра Бындю: Совершенный код №2. Реализация Unit Of WorkAlexander Byndyuhttp://www.blogger.com/profile/14185486842573956085noreply@blogger.comBlogger19125tag:blogger.com,1999:blog-458002489272917533.post-7508708447284196342011-10-20T13:45:26.783+06:002011-10-20T13:45:26.783+06:00@Denis
Я видимо неправильно сказал. Все данные до...@Denis<br /><br />Я видимо неправильно сказал. Все данные должны быть готовы для отображения (без каких-либо подгрузок или доп. обработок), когда модель передается во View.Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-72200064837653435712011-10-20T13:27:15.645+06:002011-10-20T13:27:15.645+06:00Ну для View все так и есть, она не знает о ленивой...Ну для View все так и есть, она не знает о ленивой загрузке работает напрямую с коллекцией связанных объектов, Модель сама как раз и подгружает эти объекты.Denishttps://www.blogger.com/profile/17905421611815078612noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-87357620660208415882011-10-20T12:55:09.400+06:002011-10-20T12:55:09.400+06:00@Denis
Если вам надо подгружать данные во View, з...@Denis<br /><br />Если вам надо подгружать данные во View, значит что-то не так с архитектурой системы.<br /><br />Последнее место, где можно подгружать данные - это Модель. View предназначена <b>только</b> для отображения подготовленных данных.Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-65309402880625271402011-10-20T12:51:10.796+06:002011-10-20T12:51:10.796+06:00VVDenishttps://www.blogger.com/profile/17905421611815078612noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-33064369549466416212011-10-20T12:37:12.387+06:002011-10-20T12:37:12.387+06:00@Denis
А вы где эти данные подгружать хотите? M? ...@Denis<br /><br />А вы где эти данные подгружать хотите? M? V? C?Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-48844271704606494912011-10-20T12:29:55.671+06:002011-10-20T12:29:55.671+06:00А как быть с Lazy-loading в ASP.NET MVC. Например ...А как быть с Lazy-loading в ASP.NET MVC. Например я передаю в модель сущность которая имеет связанные сущности, которые в свою очередь подгружаются по требованию. В вашем примере сессия будет закрыта и ничего не получится.Denishttps://www.blogger.com/profile/17905421611815078612noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-8016034781123194912010-07-23T16:57:11.675+06:002010-07-23T16:57:11.675+06:00@Роман
Давай, я на следующей неделе уже свою верси...@Роман<br />Давай, я на следующей неделе уже свою версию выложу.Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-42747062596850353542010-07-23T16:55:59.687+06:002010-07-23T16:55:59.687+06:00P.S. Wanderer - это я :)P.S. Wanderer - это я :)Романhttps://www.blogger.com/profile/04917528930881078300noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-6851546322447126162010-07-23T16:55:03.955+06:002010-07-23T16:55:03.955+06:00@Александр
обязательно отвечу как будет время :)@Александр<br /><br />обязательно отвечу как будет время :)Романhttps://www.blogger.com/profile/04917528930881078300noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-39650656992910575892010-07-13T22:48:36.102+06:002010-07-13T22:48:36.102+06:00На почте уже несколько "ручных" реализац...На почте уже несколько "ручных" реализаций, т.е. не использующих никакие ORM.<br /><br />Есть ли у кого-то еще опыт создания/использования такого подхода?Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-78330640334140823292010-07-13T22:47:11.332+06:002010-07-13T22:47:11.332+06:00@Wanderer
Т.е. твоя реализация в данном случае обо...@Wanderer<br />Т.е. твоя реализация в данном случае оборачивает ObjectContext из EF. <br /><br />Тут осталось не раскрыто как репозитории взаимодействуют с UoW?<br /><br />Было бы полезно увидеть пример использования для сценария сохранения и чтения.<br /><br />Еще интересно, можешь оценить стоимость перехода на другую ORM с такой реализацией?Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-76777181032800514682010-07-09T00:45:10.545+06:002010-07-09T00:45:10.545+06:00в конструкторе UOF допустил опечатку (нужно public...в конструкторе UOF допустил опечатку (нужно public вместо protected)Романhttps://www.blogger.com/profile/04917528930881078300noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-56343925512476319192010-07-09T00:43:00.397+06:002010-07-09T00:43:00.397+06:00@Александр
на текущем проекте используем Entity F...@Александр<br /><br />на текущем проекте используем Entity Framework 3.5<br /><br />Используем что-то типа этого (накидал на скорую руку, возможно что-то не учел, но думаю все предельно просто и понятно):<br />public interface IUnitOfWork : IDisposable<br />{<br />void Save();<br />}<br /><br />public class UnitOfWork : IUnitOfWork<br />{<br />private readonly TransactionScope _transactionScope;<Романhttps://www.blogger.com/profile/04917528930881078300noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-64808657008309277332010-07-08T20:03:54.845+06:002010-07-08T20:03:54.845+06:00@Nikita Govorov
Если можно вкраце достоинства этог...@Nikita Govorov<br />Если можно вкраце достоинства этого подхода и недостатки. Используете ли вы его в своих проектах?Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-54684176559745867922010-07-08T20:03:16.675+06:002010-07-08T20:03:16.675+06:00@Wanderer
А ты сам какую используешь?@Wanderer<br />А ты сам какую используешь?Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-19060188884812593352010-07-06T02:02:39.415+06:002010-07-06T02:02:39.415+06:00Look at http://code.google.com/p/taijutsu/source/b...Look at http://code.google.com/p/taijutsu/source/browse/Anonymoushttps://www.blogger.com/profile/01683431347285303090noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-50521232952549730612010-07-04T09:30:45.994+06:002010-07-04T09:30:45.994+06:00@Артур
Выделил жирным шрифтом.@Артур <br />Выделил жирным шрифтом.Alexander Byndyuhttps://www.blogger.com/profile/14185486842573956085noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-57591416312992012652010-07-04T02:44:35.589+06:002010-07-04T02:44:35.589+06:00У меня разрыв мозга, вижу слово "вопрос"...У меня разрыв мозга, вижу слово "вопрос", но ни самого вопроса, ни знака "?" нет. Явная формулировка отсутствует.Артур Терегуловhttps://www.blogger.com/profile/17669799619050944474noreply@blogger.comtag:blogger.com,1999:blog-458002489272917533.post-46774872716129673742010-07-03T21:56:18.868+06:002010-07-03T21:56:18.868+06:00Хотелось бы узнать мнения по поводу такой реализац...Хотелось бы узнать мнения по поводу такой реализации Unit of Work: http://blogs.microsoft.co.il/blogs/gilf/archive/2010/06/21/revisiting-the-repository-and-unit-of-work-patterns-with-entity-framework.aspx<br /><br />сам я скептически отношусь к такой реализацииРоманhttps://www.blogger.com/profile/04917528930881078300noreply@blogger.com