Въведение в обвързването на данни в ASP.Net

По подобен начин ASP.Net също подкрепя концепцията за свързване на данни. Чрез свързване на данни можете да обвържете всяко управление на сървъра с различни свойства, изрази, колекции или дори методи. Има и гъвкавост за избор на източник на данни, който може да бъде база данни, статичен файл, enum или всеки друг източник. По този начин ASP.Net Data Binding предоставя прост и удобен начин за създаване на връзка между контрола на сървъра и данните на приложението.

Концепции за свързване на данни в ASP.Net

Основната концепция за свързване на данни в ASP.Net може да бъде илюстрирана много добре на следващото изображение.

Нека разберем терминологиите, използвани в изображението.

  • Binding Source - променлива от данни за приложението, която съхранява бизнес данните.
  • Цел на обвързване - контрола на сървъра или UI елемента, към който са свързани данните.
  • Обект на зависимостта - обектът, който е свързан с целта за обвързване.
  • Свойство на зависимостта - Свойството или атрибутът на обекта на зависимост, към който са обвързани данните.
  • Източник Обект - Обектът, който съхранява бизнес данните.
  • Source Property - Свойството или атрибутът на Source Source Object, чиято стойност са действителните данни.

Така че, ако искате да свържете текстовото свойство на контрола за въвеждане на потребителския интерфейс с името на служителя, то TextBox е обектът Цел / Зависимост. Text е целевото свойство. Служителят е бизнес обектът, а името е собствеността.

Посоката на свързване определя разпространението на данни напред и назад между източника и целта. При еднопосочно обвързване всички промени в бизнес данните се отразяват в елемента на потребителския интерфейс, но не и обратно. Това е полезно в случаите, когато бизнес данните са само за четене и потребителският интерфейс има информативен характер.

Двупосочното свързване гарантира, че промяната на данните в източника или в целевите обекти се синхронизира автоматично. Това създава напълно интерактивни форми на потребителски интерфейс, при които промените в полетата на формата се актуализират незабавно в променливите на задния край.

При еднопосочно свързване към източник, всички промени в данните на потребителския интерфейс се актуализират в бизнес обекта, но не и обратното. Това е полезно при сценарии, когато данните се изчисляват въз основа на други потребителски данни и се нуждаят от честа преоценка.

Какво е обвързване на данни?

  • Преди да продължим, нека първо разберем концепцията за свързване на данни като цяло. Обвързването на данни е процесът на свързване на потребителския интерфейс на приложението с бизнес данните. Сега може да се чудите, че това е същото като показването на бизнес данните в потребителския интерфейс. Не, не е. Какво става, ако данните се променят? Актуализира ли се автоматично в потребителския интерфейс?
  • Така че, когато свързването на данни се извърши правилно, елементите на потребителския интерфейс отразяват автоматично промените в бизнес данните. Представете си, че вашите потребителски интерфейсни елементи непрекъснато наблюдават присвоената към тях променлива / набор данни. Веднага след като има промяна в данните, елементите на потребителския интерфейс се инструктират да отразят съответно промяната.
  • Красив пример за това в реалния свят е калкулаторът в нашите смартфони. Те са създадени да дадат резултата веднага щом потребителят въведе каквато и да е стойност. Забележете на екрана по-долу, как се произвеждат и показват резултатите в реално време. Без да е необходимо да се дава командата 'равен'.

Това се постига чрез обвързване на данни. Елементът на потребителския интерфейс, отговорен за показването на резултата, следи внимателно елемента, който улавя потребителския вход. След това се инструктира да се изчислят и покажат резултатите веднага щом данните в потребителския вход се променят.

Как да създадете обвързване на данни в ASP.Net?

По-долу е прост пример за демонстриране на свързване на данни в ASP.Net. Бихме създали обикновено WPF приложение с три контроли (текстов блок, плъзгач и лента за напредък) в потребителския интерфейс. Стойността на две контроли ще бъде обвързана с данните в третата контрола.

Стъпка 1: Отворете Visual Studio и създайте нов проект.

Стъпка 2: Изберете WPF App (.Net Framework) от полето за съвет на нов проект.

Стъпка 3: Конфигурирайте основните подробности и натиснете Create .

Стъпка 4: Това създава приложение на Shell WPF . Сега поставете TextBlock, плъзгач и ProgressBar контрол в потребителския интерфейс. Ние ще обвържем стойността на TextBlock и ProgressBar със стойността на контрола на Slider.

Стъпка 5: Сега добавете кода, подчертан на фигурата, за да обвържете свойството Text на TextBlock.

Text="(Binding Value, ElementName=slider)"

По същия начин и за свойството Value на ProgressBar.

Value="(Binding Value, ElementName=slider)"

Това свързва свойствата към свойството Value на Slider.

Стъпка 6: Стартирайте приложението. Ще видите, че плъзгащото управление актуализира стойностите на текстовия блок и лентата на напредъка. Преместете плъзгача, за да видите това в действие.

Нека разберем терминологиите, използвани от примера.

  • Източник на свързване - Контролът на плъзгача в потребителския интерфейс.
  • Обвързваща цел - TextBlock и ProgressBar
  • Обект на зависимостта - създадените обекти TextBlock и ProgressBar.
  • Свойство Dependency - Свойството Text на TextBlock и свойството Value на ProgressBar.
  • Източник Обект - Плъзгачът обект, създаден с х: име = “плъзгач”.
  • Source Property - Свойството Value на плъзгача.

Стъпка 7: F иналният код трябва да бъде както следва:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:DataBindingInASP.Net"
mc:Ignorable="d"
Title="MainWindow">
Text="(Binding Value, ElementName=slider)" />
Width="250"/>
Value="(Binding Value, ElementName=slider)"/>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:DataBindingInASP.Net"
mc:Ignorable="d"
Title="MainWindow">
Text="(Binding Value, ElementName=slider)" />
Width="250"/>
Value="(Binding Value, ElementName=slider)"/>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:DataBindingInASP.Net"
mc:Ignorable="d"
Title="MainWindow">
Text="(Binding Value, ElementName=slider)" />
Width="250"/>
Value="(Binding Value, ElementName=slider)"/>
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:DataBindingInASP.Net"
mc:Ignorable="d"
Title="MainWindow">
Text="(Binding Value, ElementName=slider)" />
Width="250"/>
Value="(Binding Value, ElementName=slider)"/>

заключение

Научихме основната концепция за свързване на данни и как се реализира в ASP.Net. Това е много основен пример за свързване на данни в ASP.Net и темата далеч надхвърля това. Силно се препоръчва да изследвате повече, да пишете повече код, да експериментирате повече с различни източници на данни. Това значително би помогнало за получаване на задълбочено разбиране и овладяване на темата.

Препоръчителни статии

Това е ръководство за свързване на данни в ASP.NET. Тук сме обсъдили обзори за свързване на данни в ASP.NET, какво е ослепяване на данни и стъпки за създаване на свързване на данни в ASP.NET с крайния код. Можете също да прегледате нашите статии, за да научите повече-

  1. Какво е ASP.NET?
  2. Кариера в ASP.NET
  3. ASP.NET Framework
  4. Какво е .NET Core