Лабораторная работа №8 Создание хранилища данных

advertisement
Лабораторная работа №8
Создание хранилища данных
1. Откройте Microsoft Visual Studio 2010.
a. В стартовом меню 10264A-GEN-DEV, выберите Все программы, щелкните
Microsoft Visual Studio 2010.
2. Откройте MvcApplication1 solution из следующего расположения.
Язык
Путь
Visual Basic
D:\Demofiles\VB\MvcApplication1
Visual C#
D:\Demofiles\CS\MvcApplication1
3.
4.
5.
6.
a. На главное странице окна – Microsoft Visual Studio, в меню Файл , щелкните
открыть проект или нажмите CTRL+SHIFT+O.
b. bВ
диалоговом
окне
открытия
проекта
введите
D:\Demofiles\CS\MvcApplication1\MvcApplication1.sln или D:\Demofiles\VB\
MvcApplication1\MvcApplication1.sln и нажмите Открыть .
Добавьте новую ADO.NET Entity Data Model названную как MyModel.edmx к
проекту, and сгенерируйте модель из базы данных. Модель должна быть добавлена
в папку Models.
a. в Solution Explorer, выберите правой кнопкой Models, выберите Добавить,
затем щелкните Новый Элемент.
b. В окне нового элемента, на левой панели щелкните Данные.
c. В средней панели выберите ADO.NET Entity Data Model, в окне имени
введите MyModel.edmx и нажмите Добавить.
d. На странице «Выберите Объекты БД», в списке «Какие объекты БД вы
хотите включить в модель» откройте Таблицы, выберите таблицы Blog and
Blogger, и нажмите Готово.
В модели Entity Data Wizard, на странице Выбор модели Содержание, нажмите
кнопку Создать из базы данных, а затем нажмите кнопку Далее.
a. В диалоговом окна Выбери источник данных, в списке источников данных
нажмите кнопку Microsoft SQL Server, а затем нажмите кнопку OK.
b. В диалоговом окне Свойства соединения в поле Имя сервера напишите \
SQLExpress,
в
списке
БД
введите
имя
базы
данных
AdventureWorksLT2008R2, а затем нажмите кнопку Далее.
В модели Entity Data Wizard, на странице Выбор соединения, в списке «Какое
подключение ваше приложение должно использовать для подключения к базе
данных?»
щелкните
10264a-gendev\sqlexpress.AdventureWorksLT2008R2.Sales(LT), затем нажмите Далее.
Выберите таблицы Блог и Блоггер.
a. На странице Выбор объектов базы данных страницы, в списке «какие
объектыв базы данных вы хотите включить в список моделей», разверните
узел Таблицы, выберите Блог и Блоггер, а затем нажмите кнопку Готово.
7. Добавьте новый класс хранилища названный BlogRepository в папку Models.
a. в Solution Explorer, выберите правой кнопкой Models, выберите Добавить,
затем щелкните Новый Элемент.
b. В окне нового элемента, на левой панели щелкните VB или Visual C#.
c. В средней панели щелкните Класс, в поле имени введите BlogRepository и
нажмите Добавить.
8. Добавьте код, как показано ниже, в класс BlogRepository.
[Visual C#]
private AdventureWorksLT2008R2Entities db = new AdventureWorksLT2008R2Entities();
public IQueryable<MvcApplication1.Models.Blog> GetAllBlogs()
{
return db.Blogs;
}
[Visual Basic]
Private db As New AdventureWorksLT2008R2Entities()
Public Function GetAllBlogs() As IQueryable(Of MvcApplication1.Blog) Return db.Blogs
End Function

В окне BlogRepository.cs или
введите следующий код.
BlogRepository.vb, вверху класса BlogRepository,
[Visual C#]
private AdventureWorksLT2008R2Entities db = new AdventureWorksLT2008R2Entities();
public IQueryable<MvcApplication1.Models.Blog> GetAllBlogs()
{
return db.Blogs;
}
[Visual Basic]
Private AdventureWorksLT2008R2Entities db As New AdventureWorksLT2008R2Entities()
Public Function GetAllBlogs() As IQueryable(Of MvcApplication1.Blog) Return db.Blogs
End Function
9. Добавьте метод Save в класс BlogRepository, ответственный за сохранение данных
в БД.
[Visual C#]
public static void Save(MvcApplication1.Models.Blog blog)
{
using (var db = new AdventureWorksLT2008R2Entities ())
{
if (blog.BloggerID == 0)
{
db.AddToBlogs(blog);
db.SaveChanges();
}
}
}
[Visual Basic]
Public Shared Sub Save(ByVal blog As MvcApplication1.Blog) Using db As New
AdventureWorksLT2008R2Entities()
If blog.BloggerID = 0 Then db.AddToBlogs(blog) db.SaveChanges()
End If
End Using
End Sub

В окне BlogRepository.cs или BlogRepository.vb введите следующий код.
[Visual C#]
public static void Save(MvcApplication1.Models.Blog blog)
{
using (var db = new AdventureWorksLT2008R2Entities ())
{
if (blog.BloggerID == 0)
{
db.AddToBlogs(blog);
db.SaveChanges();
}
}
[Visual Basic]
Public Shared Sub Save(ByVal blog As MvcApplication1.Blog) Using db As New
AdventureWorksLT2008R2Entities()
If blog.BloggerID = 0 Then
db.AddToBlogs(blog)
db.SaveChanges() End If
End Using
End Sub
10. Удалите класс Blog из папки Models.
a. В Solution Explorer, в папке Models, правой кнопкой выберите Blog.cs или
Blog.vb, затем нажмите Удалить.
b. В диалоговом окне Microsoft Visual Studio нажмите ОК.
11. Постройте приложение и отладьте.
a. В окне MvcApplication1 – Microsoft Visual Studio, в меню Построить,
нажмите Построить решение или нажмите CTRL+SHIFT+B.
12. Закройте Visual Studio.
a. В окне MvcApplication1 – Microsoft Visual Studio, щелкните кнопку
Закрыть.
Download