Вы должны быть в состоянии сделать все это из разметки. Вот рабочий пример использования базы данных Northwind
Определите главный GridView:
<asp:GridView ID="master" runat="server" DataSourceID="sdsMaster"
AutoGenerateColumns="False" DataKeyNames="OrderID" AllowPaging="True" >
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:BoundField DataField="OrderID" HeaderText="OrderID" InsertVisible="False"
ReadOnly="True" SortExpression="OrderID" />
<asp:BoundField DataField="CustomerID" HeaderText="CustomerID"
SortExpression="CustomerID" />
<asp:BoundField DataField="EmployeeID" HeaderText="EmployeeID"
SortExpression="EmployeeID" />
<asp:BoundField DataField="OrderDate" HeaderText="OrderDate"
SortExpression="OrderDate" />
<asp:BoundField DataField="RequiredDate" HeaderText="RequiredDate"
SortExpression="RequiredDate" />
<asp:BoundField DataField="ShippedDate" HeaderText="ShippedDate"
SortExpression="ShippedDate" />
<asp:BoundField DataField="ShipVia" HeaderText="ShipVia"
SortExpression="ShipVia" />
<asp:BoundField DataField="Freight" HeaderText="Freight"
SortExpression="Freight" />
</Columns>
</asp:GridView>
Определить детали GridView:
<asp:GridView ID="detail" runat="server" DataSourceID="sdsDetail"
AutoGenerateColumns="False" DataKeyNames="OrderID,ProductID" >
<Columns>
<asp:BoundField DataField="OrderID" HeaderText="OrderID" ReadOnly="True"
SortExpression="OrderID" />
<asp:BoundField DataField="ProductID" HeaderText="ProductID" ReadOnly="True"
SortExpression="ProductID" />
<asp:BoundField DataField="UnitPrice" HeaderText="UnitPrice"
SortExpression="UnitPrice" />
<asp:BoundField DataField="Quantity" HeaderText="Quantity"
SortExpression="Quantity" />
<asp:BoundField DataField="Discount" HeaderText="Discount"
SortExpression="Discount" />
</Columns>
</asp:GridView>
Вот SqlDataSource для главной таблицы. Просто основные вещи для выбора и отображения записей:
<asp:SqlDataSource ID="sdsMaster" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [CustomerID], [EmployeeID], [OrderDate], [RequiredDate], [ShippedDate], [ShipVia], [Freight] FROM [Orders]" />
Теперь в подробностях SqlDataSource используйте предложение SQL где, привязанное к выбранному первичному ключу в главном GridView:
<asp:SqlDataSource ID="sdsDetail" runat="server"
ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>"
SelectCommand="SELECT [OrderID], [ProductID], [UnitPrice], [Quantity], [Discount] FROM [Order Details] WHERE ([OrderID] = @OrderID)" >
<SelectParameters>
<asp:ControlParameter ControlID="master" DefaultValue="0" Name="OrderID"
PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
</asp:SqlDataSource>
Обратите внимание на SelectParameters и использование ControlParameter, который ищет ключ данных выбранной записи в главном GridView.
EDIT
Поскольку вы используете свою собственную базу данных с разными именами полей, измените SQL соответствующим образом.
FROM [FS_LOG_PS2FS_Validation] WHERE ([P2FV_ProcessId] = @LOG_ProcessId)
и измените SelectParameter
<SelectParameters>
<asp:ControlParameter ControlID="master" DefaultValue="0" Name="LOG_ProcessId"
PropertyName="SelectedValue" Type="Int32" />
</SelectParameters>
Кроме того, вам нужно установить атрибут DataKeyNames в главном GridView
<asp:GridView ID="master" runat="server" DataSourceID="sdsMaster"
AutoGenerateColumns="False" DataKeyNames="LOG_ProcessID" AllowPaging="True" >
<Columns>
Я не думаю, что вам нужно устанавливать DataKeyNames подробного GridView. Вы можете изменить это там также для полноты. Я использовал смарт-тег в представлении разработки Visual Studio 2008 для создания примера кода. Дайте мне знать, если это не ясно.
РЕДАКТИРОВАТЬ 2
Вот несколько ссылок, описывающих настройку элементов управления данными ASP.NET.
Master / Detail, используя выбираемый основной GridView с подробным ViewView
Запрос данных с помощью элемента управления SqlDataSource
Учебники по доступу к данным