Научная статья на тему 'Використання Ado. Net Entity Framework для створення інформаційної системи управління документообігом кафедри'

Використання Ado. Net Entity Framework для створення інформаційної системи управління документообігом кафедри Текст научной статьи по специальности «Экономика и бизнес»

CC BY
295
136
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
інформаційна система / ADO.NET Entity Framework / реляційні бази даних / SQL / Object-Relational Mapping / об'єктно-орієнтоване програмування / information system / ADO.NET Entity Framework / relational databases / SQL / Object- Relational Mapping / object-oriented programming

Аннотация научной статьи по экономике и бизнесу, автор научной работы — Є. В. Данилець, Г. О. Райко

У даній роботі розглянуто використання технології ADO.NET Entity Framework для створення інформаційних систем. Показано, що архітекторам та розробникам додатків орієнтованих на роботою з базами даних, доводиться враховувати необхідність досягнення двох абсолютно різних цілей. Вони повинні модулювати сутності, зв’язки та логіку бізнес-задач, а також працювати з ядрами СУБД, що використовуються для збереження і отримання даних. Дані можуть розподілятися за кількома системами зберігання даних, в кожній з яких застосовуються свої протоколи, але навіть в додатках, що працюють з однією системою зберігання даних, необхідно підтримувати баланс між вимогами системи зберігання даних і вимогами написання ефективного і зручного для обслуговування коду програми. Для вирішення цієї проблеми існують ORM-технології програмування (Object-Relational Mapping), які зв'язують бази даних з концепціями об'єктно-орієнтованих мов програмування, створюючи «віртуальну об'єктну базу даних». Зазначається, що використання цих технологій позбавляє програміста від написання великої кількості коду, тим самим значно підвищуючи швидкість розробки додатків. Показано, що більшість сучасних реалізацій ORM дозволяють програмісту при необхідності самому жорстко задати код SQL-запитів, який буде використовуватися при тих чи інших діях з об'єктом. В якості прикладу використання ADO.NET Entity Framework в середовищі IDE Visual Studio 2017 був створений прототип інформаційної системи управління документообігом кафедри. В роботі зазначається, що ефект від впровадження інформаційної системи кафедри полягає в інформаційній та управлінській сферах, а саме: підвищення продуктивності праці; економія часу; збільшення конкурентної переваги; забезпечення достовірності інформації; вдосконалення структури потоків інформації і системи документообігу; ефективна внутрішня координація за допомогою каналів електронного зв’язку.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по экономике и бизнесу , автор научной работы — Є. В. Данилець, Г. О. Райко

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

USING ADO.NET ENTITY FRAMEWORK TO CREATE A DEPARTMENT'S INFORMATION SYSTEM

This paper discusses the use of ADO.NET Entity Framework technology to create information systems. It is shown that architects and developers of database-oriented applications have to consider the need to achieve two completely different goals. They should modulate the essence, relationships and logic of business tasks, as well as work with the database kernels used to store and retrieve data. Data can be distributed across several data storage systems, each of which has its own protocols, but even in applications that work with the same data storage system, it is necessary to maintain a balance between the requirements of the data storage system and the requirements for writing efficient and easy-to-maintain program code. To solve this problem, there are ORM-programming technologies (Object-Relational Mapping), which connect the database with the concepts of object-oriented programming languages, creating a "virtual object database". It is noted that using these technologies deprives the programmer from writing a large amount of code, thereby significantly increasing the speed of application development. It is shown that most modern ORM implementations allow the programmer to hardcode the SQL query code, if necessary, which will be used for certain actions with the object. A prototype of the department’s document management information system was created in the Visual Studio 2017 IDE as an example of using the ADO.NET Entity Framework. The paper notes that the effect of the introduction of the information system of the department is in the information and management areas: improving labor productivity; time saving; increase in competitive advantage; ensuring the accuracy of information; improving the structure of information flows and the workflow system; effective internal coordination through electronic communication channels.

Текст научной работы на тему «Використання Ado. Net Entity Framework для створення інформаційної системи управління документообігом кафедри»

УДК 004.652.4 https://doi.org/ 10.35546/kntu2078-4481.2019.3.11

е.В. ДАНИЛЕЦЬ

Херсонський нацiональний технiчний ушверситет

ORCID: 0000-0003-4491-6718 Г.О. РАЙКО

Херсонський нацiональний технiчний ушверситет

ORCID: 0000-0002-7357-5687

ВИКОРИСТАННЯ ADO.NET ENTITY FRAMEWORK ДЛЯ СТВОРЕННЯ 1НФОРМАЦШНО1 СИСТЕМИ УПРАВЛ1ННЯ ДОКУМЕНТООБ1ГОМ КАФЕДРИ

У данш роботi розглянуто використання технологи ADO.NET Entity Framework для створення тформацшних систем. Показано, що архтекторам та розробникам додатюв орieнтованих на роботою з базами даних, доводиться враховувати необхiднiсть досягнення двох абсолютно ргзних цшей. Вони повиннi модулювати сутностi, зв'язки та логк б1знес-задач, а також працювати з ядрами СУБД, що використовуються для збереження i отримання даних. Дат можуть розподшятися за юлькома системами зберiгання даних, в кожнш з яких застосовуються сво'1 протоколи, але навть в додатках, що працюють з одтею системою зберiгання даних, необхiдно пiдтримувати баланс мiж вимогами системи збер^ання даних i вимогами написання ефективного i зручного для обслуговування коду програми. Для виршення цiеi проблеми iснують ORM-технологИ програмування (Object-Relational Mapping), яю зв'язують бази даних з концепцiями об'ектно-орiентованихмов програмування, створюючи «вiртуальну об'ектну базу даних». Зазначаеться, що використання цих технологш позбавляе програмкта вiд написання велико'1' кiлькостi коду, тим самим значно тдвищуючи швидюсть розробки додаттв. Показано, що бшьшкть сучасних реалiзацiй ORM дозволяють програмкту при необхiдностi самому жорстко задати код SQL-запитiв, який буде використовуватися при тих чи тших дiях з об'ектом. В якостi прикладу використання ADO.NET Entity Framework в середовищi IDE Visual Studio 2017 був створений прототип iнформацiйноi системи управлтня документооб^ом кафедри. В роботi зазначаеться, що ефект вiд впровадження iнформацiйноi системи кафедри полягае в iнформацiйнiй та управлiнськiй сферах, а саме: пiдвищення продуктивностi пращ; економiя часу; збшьшення конкурентно'1' переваги; забезпечення достовiрностi тформаци; вдосконалення структури потоюв тформаци i системи документооб^у; ефективна внутршня координащя за допомогою каналiв електронного зв'язку.

Ключовi слова: тформацшна система, ADO.NET Entity Framework, реляцшш бази даних, SQL, Object-Relational Mapping, об'ектно-орiентоване програмування.

Е.В. ДАНИЛЕЦ

Херсонский национальный технический университет

ORCID: 0000-0003-4491-6718 Г.А. РАЙКО

Херсонский национальный технический университет

ORCID: 0000-0002-7357-5687

ИСПОЛЬЗОВАНИЕ ADO.NET ENTITY FRAMEWORK ДЛЯ СОЗДАНИЯ ИНФОРМАЦИОННОЙ СИСТЕМЫ УПРАВЛЕНИЯ ДОКУМЕНТООБОРОТОМ КАФЕДРЫ

В данной работе рассмотрено использование технологии ADO.NET Entity Framework для создания информационных систем. Показано, что архитекторам и разработчикам приложений ориентированных на работу с базами данных, приходится учитывать необходимость достижения двух совершенно разных целей. Они должны модулировать сущности, связи и логику бизнес-задач, а также работать с ядрами СУБД, используемых для сохранения и получения данных. Данные могут распределяться по нескольким системам хранения данных, в каждой из которых применяются свои протоколы, но даже в приложениях, работающих с одной системой хранения данных, необходимо поддерживать баланс между требованиями системы хранения данных и требованиями написания эффективного и удобного для обслуживания кода программы. Для решения этой проблемы существуют ORM-технологии программирования (Object-Relational Mapping), которые связывают базы данных с концепциями объектно-ориентированных языков программирования, создавая «виртуальную объектную базу данных». Отмечается, что использование этих технологий уменьшает объем кода, который необходимо программисту написать, тем самым значительно повышая скорость разработки

приложений. Показано, что большинство современных реализаций ORM позволяют программисту при необходимости самому жестко задать код SQL-запросов, который будет использоваться при тех или иных действиях с объектом. В качестве примера использования ADO.NET Entity Framework в среде IDE Visual Studio 2017 был создан прототип информационной системы управления документооборотом кафедры. В работе отмечается, что эффект от внедрения информационной системы кафедры заключается в информационной и управленческой сферах, а именно: повышение производительности труда; экономия времени; увеличение конкурентного преимущества; обеспечение достоверности информации; совершенствование структуры потоков информации и системы документооборота; эффективная внутренняя координация с помощью каналов электронной связи.

Ключевые слова: информационная система, ADO.NET Entity Framework, реляционные базы данных, SQL, Object-Relational Mapping, объектно-ориентированное программирование.

Y.V. DANYLETS,

Kherson National Technical University

ORCID: 0000-0003-4491-6718 H.O. RAYKO

Kherson National Technical University

ORCID: 0000-0002-7357-5687

USING ADO.NET ENTITY FRAMEWORK TO CREATE A DEPARTMENT'S INFORMATION SYSTEM

This paper discusses the use of ADO.NET Entity Framework technology to create information systems. It is shown that architects and developers of database-oriented applications have to consider the need to achieve two completely different goals. They should modulate the essence, relationships and logic of business tasks, as well as work with the database kernels used to store and retrieve data. Data can be distributed across several data storage systems, each of which has its own protocols, but even in applications that work with the same data storage system, it is necessary to maintain a balance between the requirements of the data storage system and the requirements for writing efficient and easy-to-maintain program code. To solve this problem, there are ORM-programming technologies (Object-Relational Mapping), which connect the database with the concepts of object-oriented programming languages, creating a "virtual object database". It is noted that using these technologies deprives the programmer from writing a large amount of code, thereby significantly increasing the speed of application development. It is shown that most modern ORM implementations allow the programmer to hardcode the SQL query code, if necessary, which will be used for certain actions with the object. A prototype of the department's document management information system was created in the Visual Studio 2017 IDE as an example of using the ADO.NET Entity Framework. The paper notes that the effect of the introduction of the information system of the department is in the information and management areas: improving labor productivity; time saving; increase in competitive advantage; ensuring the accuracy of information; improving the structure of information flows and the workflow system; effective internal coordination through electronic communication channels.

Keywords: information system, ADO.NET Entity Framework, relational databases, SQL, Object-Relational Mapping, object-oriented programming.

Постановка проблеми

Документа e одним з предмепв пращ або результатом управлшсько! пращ, а процедури роботи з документами e невщ'емними елементами технологи управлшня. В CTCTeMi оргашзацшного управлшня використовуються рiзнi форми уявлення i використання шформаци, але переважне значення мае документальна форма. Документооб^ будь кафедри вищого навчального закладу е одним з найбтш трудомютких процеав, що вимагае значних трудових i тимчасових витрат. При цьому важливо враховувати, що наявшсть в повному обсязi правильно розроблених докуменпв е одним з найважливших показнишв устшно! роботи кафедри в цшому.

Як правило, кожен документ збертаеться на кафеда в двох формах: у електронному формат (у виглядi комп'ютерних файлiв на жорсткому диску комп'ютера кафедри) i в паперовому (на паперовому носи в роздрукованому вигляд^ в конкретнш папщ докуменпв вщповвдно до прийнято! класифшацп). При цьому число таких папок ютотно, а шльшсть збернаються докуменпв, як мшмум, на порядок бшьше.

Ah^Í3 останшх дослщжень i публжацш

Зазвичай архггекторам та розробникам додатшв орieнтованих на роботою з базами даних, доводиться враховувати необхвдшсть досягнення двох абсолютно рiзних цшей. Вони повинш модулювати сутносп, зв'язки та лопку бiзнес-задач, а також працювати з ядрами СУБД, що використовуються для збереження i отримання даних. Даш можуть розподшятися за кшькома системами

збернання даних, в кожнш з яких застосовуються сво! протоколи, але навиь в додатках, що працюють з однieю системою збернання даних, необх1дно пiдтримувaти баланс мiж вимогами системи зберiгaння даних i вимогами написания ефективного i зручного для обслуговування коду програми.

Системи керування базами даних демонструють непогану продуктивнiсть пiд час виконання глобальних зaпитiв, як1 зaчiпaють велику дiлянку бази даних, але об'eктно-орieнтовaний доступ бiльш ефективний при робот з малими обсягами даних, осшльки це дозволяе скоротити семантичну прогалину мiж об'ектною i реляцiйною формами даних [2].

В [1] зазначаеться, що необхвдно забезпечити роботу з даними в термшах клаав, а не таблиць даних i навпаки, перетворити термiни i дaнi клаав в дaнi, придaтнi для збер^ання в СУБД. Необхвдно також забезпечити штерфейс для CRUD-оперaцiй над даними. Загалом, необхiдно позбутися вiд необхщносп писати SQL-код для взаемоди в СУБД.

Реляцшш бази даних використовують нaбiр таблиць, що представляють прост дaнi. Додаткова або пов'язана шформащя зберiгaеться в iнших таблицях. Часто для збернання одного об'екта в реляцшно! бaзi даних використовуеться кшька таблиць; це, в свою чергу, вимагае застосування операци JOIN для отримання вае1 шформаци, що ввдноситься до об'екту, для li обробки. Оскшьки системи керування базами даних зазвичай не реaлiзують реляцiйного подання фiзичного рiвня зв'язк1в, то виконання дешлькох послiдовних зaпитiв може бути занадто витратним [1].

Використання реляцшно1 бази даних для зберiгaння об'ектно-орiентовaних даних призводить до семантичного розриву, змушуючи прогрaмiстiв писати програмне забезпечення, яке повинно вмiти як обробляти даш в об'ектно-орiентовaному виглядi, так i вмiти зберегти цi даш в реляцшно1 формi. Ця постшна необхiднiсть в перетвореннi мгж двома рiзними формами даних не пльки сильно знижуе продуктивнiсть, але i створюе труднощi для прогрaмiстiв, так як обидвi форми даних накладають обмеження друг на друга.

Для вирiшення ще1 проблеми юнують так звaнi ORM (Object-Relational Mapping) - технолопя програмування, яка зв'язуе бази даних з концепщями об'ектно-орiентовaних мов програмування, створюючи <^ртуальну об'ектну базу даних» [3].

ORM позбавляе программа вiд написання велико1 кшькосп коду, тим самим значно щдвищуючи швидк1сть розробки додатк1в. Крiм того, бшьшють сучасних реaлiзaцiй ORM дозволяють прогрaмiсту при необхiдностi самому жорстко задати код SQL-зaпитiв, який буде використовуватися при тих чи шших дiях з об'ектом.

За даними опитування компанп Pluralsight на тему «найкраща NET ORM», перше мкце за популярнiстю займае Entity Framework ORM, за яку вщдали голоси 37,8% опитаних [4].

Формулювання мети дослщження

У багатьох вузах Украши впроваджуються або вже впровaдженi рiзнi iнформaцiйнi системи управл1ння та документооб^. Нaйчaстiше подiбнi системи побудовaнi на бaзi технологiй нaйбiльших заруб1жних корпорацш, таких як SAP, IBM, Microsoft, Oracle. Використання подiбноl технолопчно1 платформи дозволяе значно зменшити час розробки шформащйних систем, але пвдвищуе !х вaртiсть. Не всi ВНЗ мають мaтерiaльнi ресурси для зaкупiвлi подiбних систем, тому часто зустрiчaеться так звана «острiвнa» aвтомaтизaцiя, при якш автоматизуються лише окремi аспекти дiяльностi ВНЗ. Крiм цього, iснуючi системи спрямоваш на aвтомaтизaцiю дiяльностi всього вузу. Кафедра представляеться у виглядi окремого модуля, який неможливо використовувати без установки вае1 системи в цшому. Функци, що подаються такими системами, надлишков^ i, як наслвдок, !х використання для потреб кафедри е незручним. До того ж iснуючi системи вимагають значних витрат в плaнi мaтерiaльно-технiчного забезпечення.

Все це часто ввдбиваеться на тому, що дiяльнiсть кафедри в дaнiй обласп залишаеться не автоматизованою. У зв'язку з цим завдання розробки i впровадження iнформaцiйних систем упрaвлiння кафедрою i формування звггно1 документаци е актуальним.

Тому метою даного дослвдження е спроба використання Entity Framework ORM для виршення нагально1 потреби в шформацшнш системi кафедри ВНЗ.

Викладення основного матер1алу дослiдження

Entity Framework (EF) являе спещальну об'ектно-орiентовaну технолог1ю на бaзi середовища .NET для роботи з даними. Якщо традицшш засоби ADO.NET дозволяють створювати тдключення, команди та iншi об'екти для взаемодп з базами даних, то EF являе собою бшьш високий рiвень aбстрaкцil, який дозволяе абстрагуватися в1д само1 бази даних i працювати з даними незалежно вiд типу сховища. Якщо на фiзичному рiвнi ми оперуемо таблицями, iндексaми, первинними i зовнiшнiми ключами, то на концептуальному рiвнi, який нам пропонуе EF, ми вже працюемо з об'ектами.

Середовище ADO.NET Entity Framework дозволяе додаткам взaемодiяти з даними в рiзних формах, включаючи дaнi, що зберiгaються в реляцшних базах даних (БД). Розробник використовуе ADO.NET Entity Framework i Visual Studio для створення так звано1 модел1 даних сутностей, що представляе базу даних, пiсля чого за допомогою LINQ to Entities працюе з об'ектами модел1 сутностей.

ADO.NET Entity Framework тдтримуе бтшкть популярних систем управлшня базами даних, зокрема Microsoft SQL Server. EF працюе таким чином, що непомпно для розробника генеруе команди SQL для взаемодй' з базою даних.

Центрально1 концепцiею EF е поняття сутностi або entity. Сутшсть представляе набiр даних, асоцшованих з певним об'ектом. Тому дана технолопя передбачае роботу не з таблицями, а з об'ектами та 1х наборами.

Будь-яка сутнiсть, як i будь-який об'ект з реального свиу, мае низку властивостей. Наприклад, якщо сутнiсть описуе спiвробiтника кафедри, то ми можемо видшити так! властивосп, як iм'я, прiзвище, посада, вж тощо. Типи даних властивостей необов'язково можуть бути простими, а й можуть представляти собою б!льш комплекснi структури даних. I у кожно1 сутносп може бути одна або калька властивостей, як1 будуть вщр!зняти цю сутшсть вщ шших i будуть ушкально визначати цю сутшсть. Под!бш властивосп називають ключами.

При цьому сутност можуть бути пов'язаш асошативними зв'язками один-до-багатьох, один-до-одного i багато-до-багатьох, под!бно до того, як в реальнш баз! даних вщбуваеться зв'язок через зовшшш ключ!.

1ншим важливим поняттям в EF е Entity Data Model (модель даних сутностей). Ця модель зютавляе класи сутностей з реальними таблицями в БД.

Entity Data Model складаеться з трьох р!вшв: концептуального, р!вень сховища i р!вень зютавлення. На концептуальному р!вш вщбуваеться визначення клаав сутностей, як1 використовуються в додатку. Р!вень сховища визначае таблиц!, стовпщ, вщношення м1ж таблицями i типи даних, з якими пор!внюеться використовувана база даних. Р!вень зютавлення служить посередником м!ж попередшми двома, визначаючи зютавлення м1ж властивостями класу сутносп i стовпцями таблиць. Таким чином, ми можемо через класи, визначеш у додатку, взаемод!яти з таблицями з бази даних.

EF передбачае три можлив! способи взаемодй з базою даних: database first: EF створюе наб!р клаав, як! вщображають модель конкретно1 бази даних; model first: спочатку розробник створюе модель бази даних, по якш попм EF створюе реальну базу даних на сервер!; code first: розробник створюе клас модел даних, яш будуть збершатися в БД, а попм EF за шею моделлю генеруе базу даних та ïï таблиц!.

Як ведомо, у реляцшнш баз! даних шформащя упорядковуеться в таблиц!. Технолопя LINQ to Entities може використовуватися для визначення запипв, як! обирають шдмножину даних з таблиц!. Ввдмшною рисою використання LINQ у поеднанш з EF е те, що можна отримувати не пльки окрем! рядки з БД, а й цш об'екти, що зв'язаш р!зними асошативними зв'язками.

Для пояснения переваг використання описано1 технологи розглянемо наступний приклад, що показуе як можна взаемод!яти з базою даних за допомогою платформи Entity Framework. Також в цьому приклад! продемонстроваш особливосл моделювання зв'язшв багато-до-багатьох в ADO.NET EF.

Розглянемо спрощену базу даних УМКД, в якш збершаеться шформащя про елементи учбово-методичного комплексу дисциплши, схема яко1 побудована в Microsoft SQL Server Management Studio i зображена на рис. 1.

База даних складаеться з трьох таблиць: Authors, ElementUMKD i AuthorElement. Таблиця Authors складаеться з трьох стовпщв: ушкальний вдентифшатор автора, !м'я, пр!звище та по-батьков!.

Рис. 1. Схема бази даних УМКД

Таблиця Е1ешепШМКБ складаеться з чотирьох стовпцiв з iнформацieю про кожен елемент УМКД в базi даних: в них збертаеться номер елемента УМКД, назву елемента, реестрацшний номер i дату реестрацii.

Таблиця AuthorE1ement складаеться з двох стовпщв, в яких зберiгаеться номер елемента УМКД та щентифшатор автора. Ця таблиця пов'язуе шформацш про авторiв з елементами УМКД. Стовпець аи^ог_1Б е зовнiшнiм ключем, тобто значення стовпця цiеi' таблицi збiгаються зi стовпцем первинного ключа в шшш таблицi (Author_ID в таблицi Е1ешепШМКБ). Стовпець e1ement_ID теж

е зовшшшм ключем - вш вiдповiдаe стовпцю первинного ключа (element_ID) з таблицi ElementUMKD.

База даних може складатися з декiлькох таблиць. Проектувальник БД прагне скоротити кiлькiсть даних, що дублюються мiж таблицями. Зовнiшнi ключi, що задаються в момент створення таблищ БД, пов'язують данi дек1лькох таблиць. В даному випадку комбiнацiя стовпщв Author_ID та element_ID таблицi AuthorElement утворюе складений первинний ключ. Таким чином, кожен рядок таблищ однозначно пов'язуе одного автора з номером елемента УМКД.

Кожне значения зовшшнього ключа повинно вщповвдати значенню первинного ключа шшо1 таблицi, щоб СКБД могла перевiрити дiйснiсть його значення. Зовнiшнi ключi також дозволяють виконувати вибiрку взаемопов'язаних даних з дешлькох таблиць - це називаеться об'еднанням даних. М1ж первинним ключем i вiдповiдним зовнiшнiм ключем iснуе ввдношення «один до багатьох».

На рис. 1 первинний ключ в таблищ Authors - Author_ID, в таблищ AuthorElement -AuthorlD та element_ID, в таблищ ElementUMKD - element_ID. У кожному стовпщ (або груш стовпщв) первинного ключа обов'язково повинно мютитись значення, причому це значення повинно бути ушкальним в таблищ, в шшому випадку СКБД повщомить про помилку.

Лiнiï, що з'еднують таблицi на рис. 1, представляють вiдношення мiж таблицями. Лiнiя позначае зв'язок «один до багатьох» - для кожного автора з таблищ Authors в таблищ AuthorElement може збертатися будь-яка шльшсть номерiв element_ID елементiв УМКД, написаних цим автором (тобто автор може написати будь-яку к1льк1сть елементiв УМКД).

Лiнiя ввдношення з'еднуе стовпець Author_ID таблицi Authors (де Author_ID е первинним ключем) зi стовпцем Author_ID таблицi AuthorElement (де Author_ID е зовнiшнiм ключем) -л1шя мiж таблицями пов'язуе первинний ключ з вщповщним зовшшшм ключем.

Лшя мiж таблицями ElementUMKD i AuthorElement представляе собою зв'язок типу «один до багатьох» - один елемент УМКД може бути написаний шлькома авторами. Треба зазначити, що л1шя мiж таблицями з'еднуе первинний ключ element_ID в таблищ ElementUMKD з вщповщним зовшшшм ключем таблищ AuthorElement. Схема БД на рис. 1 показуе, що единою метою таблищ AuthorElement е створення вщношення «багато до багатьох» (MM) мiж таблицями Authors i ElementUMKD - автор може написати багато елеменлв УМКД, i у елемента УМКД може бути багато авторiв.

При використанш ADO.NET Entity Framework взаемодiя з базами даних вщбуваеться через класи, яш генеруе IDE для схеми бази даних. Процес створення модел1 даних БД в EF запускаеться включенням в проект ново1 моделi даних сутностей ADO.NET.

Для таблиць Authors i ElementUMKD в базi даних УМКД IDE створюе в моделi даних два класи Authors та ElementUMKD (рис. 2), що представляють авторiв елеменпв УМКД та самi щ елементи, а також 1х властивосп.

Рис. 2. Д1аграма сутностей модел1 даних ADO.NET Entity Framework

Важливо зазначити, що серед клаав, що були згенероваш, ми не знаходимо таблицю AuthorElement. Ця таблиця пов'язуе кожного автора в таблищ Authors з елементами УМКД цього автора в таблищ ElementUMKD i кожен елемент УМКД в таблищ ElementUMKD з авторами в таблищ Authors. Так ввдношення мiж таблицями ( в даному випадку - багато до багатьох або M:N) враховуються в класах моделi даних сутностей за допомогою наигащйних властивостей. Наприклад, клас Authors мiстить нaвiгaцiйну влaстивiсть з iм'ям ElementUMKD, за допомогою яко! можна отримати об'екти ElementUMKD для вах елементiв УМКД, написаних автором. Аналопчним чином клас ElementUMKD мютить нaвiгaцiйну влaстивiсть Authors, за допомогою яко! можна отримати

об'екти Authors, що представляють автор1в певного елемента УМКД. Фрагмент коду цих клаав, що був автоматично згенерований наведений нижче:

public partial class ElementUMKD {...

public int element_ID { get; set; } public string Nazva { get; set; } public string RegNomer { get; set; }

public Nullable<System.DateTime> RegData { get; set; } public virtual ICollection<Authors> Authors { get; set; }

}

public partial class Authors {...

public int Author_ID { get; set; } public string Prizvische { get; set; } public string Imya { get; set; } public string Pobatkovi { get; set; }

public virtual ICollection<ElementUMKD> ElementUMKD { get; set; }

}

Наигацшш властивосп дозволяють легко працювати 3i зв'язаними сутшсними об'ектами, особливо коли об'екти пов'язаш зовнiшнiм ключем, як це показано в наступному кодi:

using (var context = new umkd_dbEntities()) {

var authors = context.Authors

.Include(b => b.ElementUMKD) .ToList();

foreach (var author in authors) {

Debug.WriteLine(author.Imya + " " + author.Prizvische);

foreach (var elementsUMKD in author.ElementUMKD) {

Debug.WriteLine(" " + elementsUMKD.Nazva);

}

}

}

Як видно з наведеного коду, для звернення до бази даних використовуеться LINQ to Entities, який по сутi е штерфейсом LINQ API i, таким чином, ввдокремлюе вiд фiзичноi бази даних сутшсну об'ектну модель даних.

В результата маемо вивiд iнформацii про авторiв iз пов'язаною iнформацiею про !х методичнi працi у вкш Output середовища Visual Studio 2017:

Show output from: Debug 1ван 1ванов

Конспект лекц1й Методичн1 вказ1вки Петро Петров

Конспект лекц1й

Методичн1 вкав1вки

Оц1нка якостi знань студент1в

Рис. 3. Виви запиту з БД у вжш Output

В середовищi IDE Visual Studio 2017 Community був створений прототип iнформацiйноi системи управлшня документообiгом кафедри з використанням платформи ADO.NET Entity Framework, головне вiкно якоi зображено на рис. 4.

Рис. 4. Головне вжно шформацшноТ системи кафедри

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Як вже зазначалось, створення прототипу шформацшно1 системи документообиу кафедри неможливе без застосування системи управлiння базами даних. Тому шд час розробки 1С кафедри використовувалися наступнi iнформацiйнi технологи та продукти: NET Framework; Microsoft SQL Server Management Studio 2016; Entity Framework v 5.0; LINQ to Entities v6; Microsoft SQL Server Express Edition 2016; об'eктно-орieнтована мова програмування C#; IDE Visual Studio Community 2017; технолопя ADO.NET [3].

Основн функцiï iнформацiйноï системи: збiр i аналiз iнформацiï про роботу викладачiв, в тому чи^ публiкацiï та участi в науково-дослщнш дiяльностi, а також про розробку НМКД; облiк iнформацiï по дисциплшам, студентам, викладачам i аспiрантам; формування звiтноï документацiï, як по календарному, так i по навчального року; розподш навчального навантаження мiж викладачами, створення протоколiв засiдання кафедри; оргашзащя i ведення сховища даних агреговано1' iнформацiï про дiяльнiсть кафедри за минулi роки для iнформацiйноï тдтримки прийняття рiшень.

Висновки

Впровадження зазначено1' iнформацiйноï системи на кафедрi щдвищить ефективнiсть ïï дiяльностi, забезпечить можливють розподiленого доступу до даних, оргашзацшно-адмшютративного супроводу iнформацiйноï взаeмодiï, пiдвищить якють механiзмiв управлiння кафедрою, планування i контролю дiяльностi, управлiння навчальною i науково-дослщницькою дiяльнiстю, забезпечить обмiн шформащею та ïï облiк. Крiм того, система забезпечить можливють ведення i накопичення результапв дiяльностi та нормативних докуменпв кафедри, монiторингу дiяльностi кафедри, агрегування та аналiзу даних про наявний потенщал кафедри.

Ефект ввд впровадження iнформацiйноï' системи кафедри полягае в iнформацiйнiй та управлiнськiй сферах, а саме: тдвищення продуктивностi пращ; економiя часу; збiльшення конкурентноï переваги; забезпечення достовiрностi iнформацiï; вдосконалення структури потоков iнформацiï' i системи документообку; ефективна внутрiшня координацiя за допомогою каналiв електронного зв'язку.

А використання новiтнiх iнформацiйних технологiй для взаемоди з БД, зокрема ADO.NET Entity Framework, зменшуе час створення iнформацiйноï системи, зменшуе кiлькiсть помилок при написанн програмного коду, спрощуе налагодження i тестування системи в цшому.

Список використано'1 лiтератури

1. Дейтел П. Как программировать на Visual С# 2012. 5-е изд. / П. Дейтел, Х. Дейтел - СПб.: Питер, 2014. - 864 с.

2. Фримен Адам LINQ: язык интегрированных запросов в C# 2010 для профессионалов.: Пер. с англ. / Адам Фримен, Джозеф C Раттц-мл. - М.: ООО "И.Д. Вильямс", 2011. - 656 с.

3. Ноубл Дж., Flex 4. Рецепты программирования / Дж. Ноубл, Т. Андерсон, Г. Брэйтуэйт, М. Казарио, Р. Третола - БХВ-Петербург, 2011. - 720 с.

4. Данилець £.В Моделювання зв'язшв m:m баз даних в ADO.NET Entity Framework / £.В. Данилець, О.О. Панфшенко // Молодь у свт сучасних технологш: Матерiали VI Мiжнародноï' науково-практичноï' конференцiï студентiв, асшранпв та молодих вчених. - Херсон: ХНТУ. -2017. - С. 115 - 117.

References

1. Deytel P., Deytel Kh. Visual C# 2012 How to Program Pearson Education, Inc., 2013. 1024 p. (Rus. ed.: Deytel P., Deytel Kh. Kak programmirovat' na Visual C# 2012. SPb.: Piter, 2014. 864 p.).

2. Adam Frimen, Joseph C. Rattz, Jr. Pro LINQ Language Integrated Query in C# 2010 Apress. 2010. 725 p. (Rus. ed.: Adam Frimen LINQ: yazyk integrirovannykh zaprosov v C # 2010 dlya professionalov. Moscow: Williams Publishing House, 2011. 656 p.).

3. Joshua Noble, Todd Anderson, Garth Braithwaite,Marco Casario, and Rich Tretola. Flex 4 Cookbook. O'Reilly Media. 2010. 764 p. (Rus. ed.: Joshua Noble, Todd Anderson, Garth Braithwaite,Marco Casario, and Rich Tretola. Flex 4. Retsepty programmirovaniya. BKHV Peterburg, 2011. 720 p.

4. Danilets Y.V., Panfilenko O.O. Modeling of m: m database connections in ADO.NET Entity Framework. Anotatsii' dopovidei VI Mizhnarodnoyi naukovo-praktychnoyi konferentsiyi studentiv, aspirantiv ta molodykh vchenykh "Molod' u sviti suchasnykh tekhnolohiy" [Abstracts of VI International Scientific and Practical Conference of Students, Graduate Students and Young Scientists "Youth in the World of Modern Technologies"]. - Kherson, 2017, p. 115 - 117.

i Надоели баннеры? Вы всегда можете отключить рекламу.