Связать два ObjectDataSource

Мой сценарий проблемы выглядит следующим образом:

У меня есть один GridviewA, привязанный к objectdatasourceA. Когда я нажимаю строку GridviewA, я хочу, чтобы другой объектный источник данныхB выбирал идентификатор из GridViewA, а затем извлекал записи для GridviewB. Это как мастер-деталь.

Могу ли я это сделать и как использовать javascript/jqueryscript, чтобы сделать его гладким.


person Community    schedule 06.10.2009    source источник


Ответы (2)


Ваш внутренний объектный источник данных должен выглядеть так

<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" SelectMethod="Getmethod"
                TypeName="namespace">
                <SelectParameters>
                    <asp:ControlParameter ControlID="GridView1" Name="YourFieldName" PropertyName="SelectedValue"
                        Type="Int32" />
                </SelectParameters>
            </asp:ObjectDataSource>
person Muhammad Akhtar    schedule 07.10.2009

во-первых, убедитесь, что вы установили свойство dataKey в вашем gridview A как свойство ID базового объекта (или то, что вы хотите передать методу выбора objectDataSource B)

затем перейдите к objectDataSource B, настройте его, выберите метод выбора, который принимает параметр, а затем нажмите «Далее». он спросит вас, откуда взять этот параметр (я думаю, вы можете выбрать между элементом управления, сеансом и чем-то еще) и выберите элемент управления, он заполнит список всех элементов управления на странице и выберет ваш gridview A.

это передаст выбранные строки dataKey из gridview A в метод, связанный с objectDataSource B. Будет запущен код выбора, и ваш gridview B отобразит требуемое подмножество. если вы выберете новую строку в gridView A, она автоматически обновит gridview B, чтобы отобразить необходимые данные.

вы можете сделать это практически без написанного кода, если ваши методы настроены правильно. если вы собираетесь сделать это, взгляните на некоторые из доступных методов кэширования, так как это может быть довольно большой пропускной способностью в зависимости от размера ваших наборов записей.

person spaceman    schedule 07.10.2009