Professional Documents
Culture Documents
Проект Десислава Цочева 11д 2.2
Проект Десислава Цочева 11д 2.2
ПРОЕКТ
НА ТЕМА:
1
СЪДЪРЖАНИЕ
1.5.Миграции………………………………………………стр.6
2.Функционално описание………………………………...стр.7
3.Заключение……………………………………………...стр.12
2
1.Описание на базата данни
3
Фиг.1. E/R диаграма на базата данни „VegetableContext“
4
Класът ICollection е базовият интерфейс за класове в namespace от
имена System.Collections.Generic. Той предлага всички функционалности
нa IEnumerable и добавя няколко нови функционалности към
него. ICollection позволява да се добавят или премахват елементи в
колекцията, което не е възможно с IEnumerable.
1.3. Конфигуриране на БД
<connectionStrings>
<add name="VegetableContext"
connectionString="Data Source=(localdb)\MSSQLLocalDB;
Initial Catalog=Greens; Integrated Security=true"
5
providerName="System.Data.SqlClient"
/>
</connectionStrings>
Фиг.5. Конфигуриране на БД
1.4.Миграции
Изпълняват се последователно командите:
PM>Enable-Migrations
PM> Add-migration ИМЕ
PM> Update-database
2. Създаване на БД
След като сме изпълнили последователно трите команди,
автоматично се генерира база данни с името от файла AppConfig и с
таблици по образец на класовете, които сме създали.
CreateTable(
"dbo.VegetableTypes",
c => new
{ Id = c.Int(nullable: false, identity: true),
TypeId = c.Int(nullable: false),
6
Name = c.String(),
})
.PrimaryKey(t => t.Id);}
3.Функционално описание
Различните функции се осъществяват когато някой от бутоните на
приложението бъде натиснат.
Add (Добавя)
SelectAll (Извежда всички записи)
Find (Търси запис по ид)
Delete (Изтрива запис по ид)
Update (Променя запис по ид)
Clear (Изчиства контролите, за да са готови за ново ползване)
8
}
else
{
findId = int.Parse(txtId.Text);
}
Vegetable findVeg = vegController.Get(findId);
comboBoxType.Text = typeController.GetTypeById(findId);
if (findVeg == null)
{
MessageBox.Show("Не е намерено такова ид!");
txtId.BackColor = Color.Red;
txtId.Focus();
return;
}
LoadRecord(findVeg);
ClearScreen();
}
}
Vegetable findVeg = vegController.Get(findId);
findVeg.Id = int.Parse(txtId.Text);
findVeg.Name = txtName.Text;
findVeg.Number = int.Parse(txtNum.Text);
findVeg.Price = int.Parse(txtPrice.Text);
MessageBox.Show("Всичко е готово!");
}
9
3.5. Функция за изтриване на запис
if (string.IsNullOrEmpty(txtName.Text))
{
Vegetable findVeg = vegController.Get(findId);
if (findVeg == null)
{
MessageBox.Show("Не е намерено такова ид.");
txtId.BackColor = Color.Red;
txtId.Focus();
return;
}
LoadRecord(findVeg);
}
DialogResult answear = MessageBox.Show("Искате ли да изтриете записа?",
"Question", MessageBoxButtons.YesNo);
if (answear == DialogResult.Yes)
{
vegController.Delete(findId);
MessageBox.Show("Успешно изтрихте записа.");
}
}
10
3.6. Функция за изчистване на контролите
Функцията Clear се осъществява при натискането на бутона CLEAR.
Тя връща контролите в начално положение без въведените от
потребителя данни, за да не се налага да се изтриват всеки път от
потребителя.
4. Заключение
11