Что такое Northwind.EmployeesRow - PullRequest
       9

Что такое Northwind.EmployeesRow

1 голос
/ 22 апреля 2010

Я занимаюсь обучением, где вы используете поле шаблона в элементе управления gridview для вызова функции.

Я не понимаю код функции. Что такое объект Northwind.EmployeesRow?

Это учебник, которым я занимаюсь.

Урок 12. Использование полей шаблона в элементе управления GridView

И это код для функции.

Protected Function DisplayDaysOnJob(ByVal employee As Northwind.EmployeesRow) As String

    If employee.IsHireDateNull() Then
        Return "Unknown"
    Else
        ' Returns the number of days between the current
        ' date/time and HireDate
        Dim ts As TimeSpan = DateTime.Now.Subtract(employee.HireDate)
        Return ts.Days.ToString("#,##0")
    End If

End Function

1 Ответ

1 голос
/ 22 апреля 2010

Примерно на 3/4 пути вниз по уроку есть текст:

Container.DataItem возвращает Объект DataRowView, соответствующий запись источника данных, привязанная к GridViewRow. Свойство Row возвращается сильно типизированный Northwind.EmployeesRow

Что указывает на то, что Northwind.EmployeesRow является строго типизированным DataRow. Вы можете прочитать « Точки данных: эффективное кодирование со строго типизированными наборами данных », чтобы понять, что такое строго типизированные наборы данных и как они работают.

В nuthshell, при использовании "нормального" набора данных, вы написали бы код вроде:

foreach(DataRow record in myDataSet.Tables[0].Rows)
{
  var employeeId = Convert.ToInt32(record["employeeId"]);
  GivePayriseTo(employeeId);
}

С помощью строго типизированного DataRow / DataSet вы можете сделать:

foreach(Northwind.EmployeesRow employee in Employees.Rows)
{
  GivePayriseTo(employee.EmployeeId);
}
...