Статьи

Преобразование существующей модели LINQ to SQL в Telerik OpenAccess за 30 секунд

Если вы в настоящее время инвестируете в LINQ to SQL и хотите перейти на Telerik OpenAccess ORM , с новым выпуском OpenAccess Q3 вы можете сделать это довольно легко. В OpenAccess включен новый мастер, который автоматически преобразует ваши LINQ в классы SQL в Telerik LINQ. Давайте взглянем.

Я начну с простого проекта, в котором есть простая модель LINQ to SQL: Northwind.dbml. Он сопоставлен с таблицами базы данных Northwind.

образ

Я создал простую веб-форму, в которой есть GridView. Я решил, что попытаюсь поставить мастера в тупик, написав сложный оператор LINQ, один из которых содержит агрегаты, объединения, суммы и проекции для анонимных типов. Затем я беру этот код и связываю его с GridView. Код LINQ показан здесь. 

//DataContext
NorthwindDataContext dat = new NorthwindDataContext();
//LINQ Query to Aggergate and Group by to an new type
var result = from i in
(
from c in dat.Customers
join o in dat.Orders
on c.CustomerID equals o.CustomerID
select new { c.Country, o.Freight }
)
group i by new { i.Country } into g
select new { g.Key.Country, TotalAmt = g.Sum(f => f.Freight) };

//bind the results
GridView1.DataSource = result;
GridView1.DataBind();

Результаты показаны здесь:

образ

 

Время конвертации. Делать конвертирование просто и сделано на месте. Просто щелкните правой кнопкой мыши модель LINQ to SQL и выберите «Преобразовать из модели L2S в модель предметной области» из контекстного меню.

образ

 

Это вызовет мастера конвертации OpenAccess. На самом деле мастер — это одна страница. Если вы примете значения по умолчанию, мастер создаст новый файл RLINQ (файл Telerik OpenAccess LINQ) и присвоит ему то же имя и пространство имен, что и в модели LINQ to SQL. Кроме того, он создаст резервную копию старых файлов.

образ

 

Приняв все значения по умолчанию и нажав Далее, вы попадете на страницу подтверждения.

образ

 

Отсюда нажмите Готово, и мастер выполнит свою работу. Вы увидите отчет о конверсии.

 

образ

Теперь у вас будет новая модель домена OpenAccess в вашем проекте.

образ

 

Поскольку ваш проект теперь имеет два идентичных имени класса LINQ, пришло время удалить класс LINQ to SQL. (Не волнуйтесь, это резервное копирование.) Не меняя код в моем приложении, я нажимаю F5, и проект запускается, но теперь с помощью Telerik OpenAccess.

Наслаждайтесь!

образ