Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Результати виконання практичних завдань. Завдання 1. Створення класів сховища даних ПОЗавдання 1. Створення класів сховища даних ПО.
Схема ієрархії класів сховища даних ПО «Поділ Світу» представлена на рисунку 1.
Рисунок 1 – Діаграма класів сховища даних ПО «Поділ Світу»
Завдання 2. Створення і реалізація інтерфейсу доступу до даних ПО.
Опис інтерфейсу доступу до даних IWorldRepositoryAccess наведений у лістингу 1, реалізація – у лістингу 2.
Лістинг 1 – Опис інтерфейсу доступу до даних IWorldRepositoryAccess
using System; using WorldDivision.Domain;
namespace WorldDivision.Interfaces {
public interface IWorldRepositoryAccess {
#region Доступ до вмісту колекцій Macroregion[] MacroregionsArray { get; } Country[] CountriesArray { get; } Organization[] OrganizationsArray { get; } MembershipStatus[] MembershipStatusesArray { get; } Membership[] MembershipsArray { get; } UNDivisionObject[] UNDivisionObjectsArray { get; } #endregion
#region Доступ до елементів колекцій Macroregion MacroregionByName(string name); Country CountryByName(string name); Organization OrganizationByName(string name); MembershipStatus MembershipStatusByName(string name); Membership MembershipByNames( string countryName, string organizationName); UNDivisionObject UNDivisionObjectByNumeric( string numericCode); #endregion
} }
Лістинг 2 – Реалізація інтерфейсу доступу до даних IWorldRepositoryAccess
using System.Linq; using WorldDivision.Domain; using WorldDivision.Interfaces;
namespace WorldDivision.Data {
partial class WorldRepository: IWorldRepositoryAccess {
#region Доступ до вмісту колекцій контексту даних
public Macroregion[] MacroregionsArray { get { return dataContext.Macroregions.ToArray(); } }
public Country[] CountriesArray { get { return dataContext.Countries .OrderBy(e => e.Name).ToArray(); } }
public Organization[] OrganizationsArray { get { return dataContext.Organizations .OrderBy(e => e.Name).ToArray(); } }
public MembershipStatus[] MembershipStatusesArray { get { return dataContext.MembershipStatuses .OrderBy(e => e.Name).ToArray(); } }
public Membership[] MembershipsArray { get { //Membership[] membershipsArray = // dataContext.Memberships.ToArray(); //Array.Sort(membershipsArray); //return membershipsArray; return dataContext.Memberships .OrderBy(e => e).ToArray(); } }
public UNDivisionObject[] UNDivisionObjectsArray { get { return dataContext.UNDivisionObjects .OrderBy(e => e.NumericCode).ToArray(); } }
#endregion
#region Доступ до елементів колекцій контексту даних
public Macroregion MacroregionByName( string name) { return dataContext.Macroregions .FirstOrDefault(e => e.Name == name); }
public Country CountryByName(string name) { return dataContext.Countries .FirstOrDefault(e => e.Name == name); }
public Organization OrganizationByName( string name) { return dataContext.Organizations .FirstOrDefault(e => e.Name == name); }
public MembershipStatus MembershipStatusByName( string name) { return dataContext.MembershipStatuses .FirstOrDefault(e => e.Name == name); }
public Membership MembershipByNames( string countryName, string organizationName) { return dataContext.Memberships .Where(e => e.Country.Name == countryName && e.Organization.Name == organizationName) .FirstOrDefault(); }
public UNDivisionObject UNDivisionObjectByNumeric(string numericCode) { return dataContext.UNDivisionObjects .FirstOrDefault(e => e.NumericCode == numericCode); }
#endregion
} }
|