A course is the basic teaching unit, it's design as a medium for a student to acquire comprehensive knowledge and skills indispensable in the given field. A course guarantor is responsible for the factual content of the course.
For each course, there is a department responsible for the course organisation. A person responsible for timetabling for a given department sets a time schedule of teaching and for each class, s/he assigns an instructor and/or an examiner.
Expected time consumption of the course is expressed by a course attribute extent of teaching. For example, extent = 2 +2 indicates two teaching hours of lectures and two teaching hours of seminar (lab) per week.
At the end of each semester, the course instructor has to evaluate the extent to which a student has acquired the expected knowledge and skills. The type of this evaluation is indicated by the attribute completion. So, a course can be completed by just an assessment ('pouze zápočet'), by a graded assessment ('klasifikovaný zápočet'), or by just an examination ('pouze zkouška') or by an assessment and examination ('zápočet a zkouška') .
The difficulty of a given course is evaluated by the amount of ECTS credits.
The course is in session (cf. teaching is going on) during a semester. Each course is offered either in the winter ('zimní') or summer ('letní') semester of an academic year. Exceptionally, a course might be offered in both semesters.
The subject matter of a course is described in various texts.
BI-CS2 |
C# language and data access |
Extent of teaching: |
0P+3C |
Instructor: |
|
Completion: |
KZ |
Department: |
18102 |
Credits: |
4 |
Semester: |
Z |
Annotation:
The C# language and data access course objective is to introduce students several data access technologies - database, XML, NoSQL - on the Microsoft platform. The students will get to know objects used to retrieve data - Connection, Command, Data Reader and DataAdapter v ADO.NET. Next, they will learn to use current technologies such as LINQ - a set of features for querying and updating data, integrated directly with the .NET platform languages, which enable LINQ use with Objects, XML and SQL (LINQ to Objects, LINQ to XML and LINQ to SQL). Another objective is the Entity Framework - an object-relational mapper that enables .NET developers to work with relational data using domain-specific objects (ORM). This part of the course introduces Code First, Database First, Model First approaches. The students will also get to know the Conceptual Model, Storage Model and Mapping (XML description).
Lecture syllabus:
Seminar syllabus:
- Data access basic principles
- Database interfaces basic principles (at MS) - (DAO, ADO, RDO, ...)
- SQL Server/others; .NET Data Providers
2. | | Data processing in connected mode |
- Connection and Command objects
- Data input - DataReader object
- Data updating - using Command object
- Using Stored Procedures
- Transactions
3. | | Data processing in disconnected mode |
- DataSet, DataTable and DataView objects
- Working with data using DataSet
- Data source connection - DataAdapters, TableAdapters
- DataAdapter and TableAdapter Commands
- DataSet relations and constraints
- Processing concurrency for multiuser access
- Database independent DataSet
- Data Binding
- Creating Data Bound Applications using visual technics
- BindingSource and BindingNavigator objects
- DataGridView object
4. | | LINQ (Language Integrated Query) |
- Basic info about lambda expressions repetition
- LINQ - querying built directly into language constructions
- LINQ expressions syntax
- Using LINQ with object collections
- LINQ to XML
- LINQ to SQL
- Entity data model
- Three basic strategies: DB First, Model First and Code First
- Creating data model based on database structures
- Working with model (using its objects)
- Concurrency processing
- Code First subvariants: Code First From DB and Code First From Objects
- Code first
- principles
- DbContext a DbSet classes
- Conventions
- DataAnnotations
- Fluent API
- DB Initialisation, zrušení inicializace
- Migration
- basic information concerning NoSQL
- MongoDB - most widespread NoSQL
- MongoDB installation
- MongoDB data structures
- Commands
- MongoDB drivers
- Creating program using MongoDB based on ADO.NET
- Creating program using MongoDB based on Entity Framework
Literature:
Source Materials:
Programmes developed in the course of the semester are considered to be the main study source.
Requirements:
Students attending this course should already have gained experience using C# along with the basics of the object programming. The students should also know how to create SQL scripts and they should have experience with usage of a relational database. Knowledge of XML language is useful but not necessary.
The course is also part of the following Study plans:
Page updated
29. 3. 2024, semester: L/2021-2, Z,L/2023-4, Z/2021-2, Z/2020-1, Z/2019-20, L/2020-1, Z,L/2022-3, L/2019-20, Send comments to the content presented here to Administrator of study plans |
Design and implementation:
J. Novák,
I. Halaška |