<asp:Parameter Name="HomePhone" Type="String" />
<asp:Parameter Name="Extension" Type="String" />
<asp:Parameter Name="MobilePhone" Type="String" />
<asp:Parameter Name="EmployeeID" Type="Int32" />
</UpdateParameters>
<SelectParameters>
<asp:ControlParameter ControlID="grid" Name="EmployeeID"
PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
<InsertParameters>
<asp:Parameter Name="DepartmentID" Type="Int32" />
<asp:Parameter Name="Name" Type="String" />
<asp:Parameter Name="Username" Type="String" />
<asp:Parameter Name="Password" Type="String" />
<asp:Parameter Name="Address" Type="String" />
<asp:Parameter Name="City" Type="String" />
<asp:Parameter Name="State" Type="String" />
<asp:Parameter Name="Zip" Type="String" />
<asp:Parameter Name="HomePhone" Type="String" />
<asp:Parameter Name="Extension" Type="String" />
<asp:Parameter Name="MobilePhone" Type="String" />
</InsertParameters>
</asp:SqlDataSource>
As you can see, the SqlDataSource contains the UPDATE, DELETE, and INSERT
queries it needs to execute when the user performs these actions on the
DetailsView. These are parameterized queries, and a data type is specified for
each of the parameters, which, as you already know, is good programming practice.
You might also notice that the names of the fields and tables are surrounded by
square brackets ([ and ]). These square brackets allow us to include spaces and
other special characters in table names. Since none of our field or table names
contain spaces, we haven’t had to worry about this issue so far, but facilitating
the inclusion of spaces is a good idea.
The SqlDataSource is the perfect tool when you need to create fully featured
forms such as the address book quickly and easily for smaller projects like the
Dorknozzle intranet. As the DetailsView and GridView controls are tightly
integrated with the data source controls, they allow us to implement a lot of
functionality without writing any code.
Displaying Lists in DetailsView
We want to improve on our DetailsView by making it show a list of departments
instead of department IDs. This makes sense, as it’s much easier for users to select
489
Displaying Lists in DetailsView