powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Связь двух баз данных таблиц
15 сообщений из 15, страница 1 из 1
Связь двух баз данных таблиц
    #37956686
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть две таблицы из базы данных. Как мне вывеси так чтобы от Repeater1 данных, зависел вывод Repeater2? к примеру зависимость была по id Элементам. Сами таблицы созданы.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
         <asp:Repeater ID="Repeater1" runat="server">
                <HeaderTemplate>
                   <div>
           
                            </HeaderTemplate>
                            <ItemTemplate>
                            <div class="title_main_pages">Горячие новинки</div>
                             
   <asp:Repeater ID="Repeater2" runat="server">
                <HeaderTemplate>
                        <ul id="spisok_novinok">
                           
                          
                            </HeaderTemplate>
                            <ItemTemplate>
                                <li><a href="Product/<%# Eval("Id") %>"><img src="images/tovars/<%# Eval("Folder") %>/<%# Eval("Img") %>" width="150px" alt=""/></a>
                                    <div class="container_number_tovars">
                               <div><%# Eval("Title") %></div>
                         <div><strong><a href="Product/<%# Eval("Id") %>"><%# Eval("Descr") %></a></strong></div>
                                        

                                        <div class="Price_goryach"><strong><%# Eval("Price") %> руб.</strong></div>
                                        </div>
                                    </li>
                            </ItemTemplate>
                            <FooterTemplate>
                                   </ul>
                            </FooterTemplate>

        </asp:Repeater>

                               
                            </ItemTemplate>
                            <FooterTemplate>
                               </div>
                            </FooterTemplate>

        </asp:Repeater>
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957063
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMK,

Через Repeater у тебя вряд ли получится сделать. Используй GridView как главная таблица (если не устраивает стандартный шаблон в виде сетки то используй template) а как вывод в дочернюю таблицу например DataList или тот же GridView2
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957065
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VIT2708,
А gridview ведь также надо свзязывать с дочерним элементом. Как тогда действовать
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957070
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMK,

И еще если у тебя есть книга см. скрин там на 420 стр описывается и показывается пример как сделать форму типа Главная-Детальная
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957080
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMKVIT2708,
А gridview ведь также надо свзязывать с дочерним элементом. Как тогда действовать

Вот часть текста из книги что я указывал выше

Использование выбора для создания форм
типа "главная-детальная"

Как было показано в предыдущей главе, с помощью параметров можно привязывать
другие источники данных к свойству элемента управления. Например, можно также
добавить два элемента управления GridView и использовать информацию из первого
GridView для выполнения запроса ко второму.
В случае GridView свойство, которое должно быть привязано — это Selectedlndex.
Однако здесь возникает одна проблема. Selectedlndex возвращает начинающийся с
нуля номер индекса, который представляет место, где строка появляется в сетке. Это не
та информация, которая нужна, чтобы сформировать запрос для получения связанных
записей. Вместо этого необходимо ключевое поле из соответствующей строки.
К счастью, GridView позволяет легко извлечь эту информацию через свойство
SelectedDataKeys. Чтобы использовать это средство, понадобится установить для
свойства GridView.DataKeyNames список из одного или более ключевых полей,
разделенный запятыми. Каждое имя в этом списке должно соответствовать одному из свойств
привязанного объекта или одному из полей привязанной записи.
Обычно будет применяться только одно ключевое поле, как показано ниже:

<asp:GridView ID="gridEmployees" runat="server" DataSourceID="sourceEmployees"
DataKeyNames="EmployeeID" ... >

Теперь можно привязать второй источник данных к этому полю. Ниже приведен
пример использования в запросе объединения поля Employee ID для поиска всех
соответствующих записей в таблице Territories. Другими словами, этот источник данных
извлекает все регионы, за которые отвечает выбранный сотрудник.

<asp:SqlDataSource ID="sourceRegions" runat="server"
ConnectionString="<%$ ConnectionStrings:Northwind %>"
ProviderName="System.Data.SqlClient" SelectCommand="SELECT Employees.EmployeelD,
Territories.TerritorylD, Territories.TerritoryDescription FROM Employees INNER JOIN
EmployeeTerritories ON Employee^.EmployeelD = EmployeeTerritories.EmployeelD
INNER JOIN Territories ON EmployeeTerritories.TerritorylD = Territories.TerritorylD
WHERE (Employees.EmployeelD = @EmployeeID)" >
<SelectParameters>
<asp:ControlParameter ControlID="gridEmployees" Name="EmployeeID"
PropertyName="SelectedDataKey.Values["EmployeeID"]" />
</SelectParameters>
</asp:SqlDataSource>

В этом примере SqlDataSource использует единственный параметр — EmployeelD
выбранной записи о сотруднике. Значение EmployeelD извлекается из коллекции
SelectedDataKey.Values. Поле EmployeelD можно найти по его индексной позиции
(которая в данном примере равна 0, потому что это единственное поле, указанное в
списке DataKeyName) или же по имени. Единственный трюк при выполнении поиска
имени заключается в том, что нужно заменить символы кавычек соответствующим
HTML-сущностью (").
И, наконец, к этому источнику данных привязывается второй элемент GridView,
предназначенный для отображения записей о территориях.

<asp:GridView ID="gridRegions" runat="server" DataSourceID="sourceRegions" ...>
<Columns>
<asp:BoundField DataField="TerritoryID" HeaderText="ID" />
<asp:BoundField DataField="TerritoryDescription"
HeaderText="Description"/>
</Columns>
</asp:GridView>
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957081
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMK, это делается с помощью события Repeater.ItemDataBound . Создаешь такой обработчик для Repeater1 и в нем привязываешь нужные данные к вложенному репитеру.
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957083
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Книга то есть. Но хотелось бы вести с базами через page_load и там связь сделать
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957093
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMK,

???? так ведь данные в дочерней форме должны загружатся если выбрана запись например в GridView1 если же из главной таблицы ничего не выбрано то какие данные загружать из дочерней?
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957096
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VIT2708,

Код: plaintext
1.
2.
 <asp:Repeater ID="Repeater2" runat="server" datasource='<%#
                    Container.DataItem.Row.GetChildRows("Id")%>'>


Я нашел вот такую строку и я так понимаю что можно вывести через дочернию но как мне подобраться к ней из page_load
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957102
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMKVIT2708,

Код: plaintext
1.
2.
 <asp:Repeater ID="Repeater2" runat="server" datasource='<%#
                    Container.DataItem.Row.GetChildRows("Id")%>'>


Я нашел вот такую строку и я так понимаю что можно вывести через дочернию но как мне подобраться к ней из page_load

если в page_load то тут надо все делать не через Repeater а через источник данных то есть во втором источнике данных указывать например sqlparameter для выборки и привязывать его уже к контролу например
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957109
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Скажите мне как тогда лучше сделать. Мне нужно чтобы заголовок был от одной базы данных а контент под заголовком был от другой есть связть Id одной базы с category_id другой базы которая контент
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957171
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMKСкажите мне как тогда лучше сделать. Мне нужно чтобы заголовок был от одной базы данных а контент под заголовком был от другой есть связть Id одной базы с category_id другой базы которая контент

Ты заголовок выводишь в контрол например в label так во втором источнике данных ты указываешь параметры выборки и выбираешь этот контрол

То есть в SqlDataSource2 открываешь SelectQuery и дальше смотри скрин (вместо контрола ты можешь выбрать другой источник)
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957252
bazile
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMK, вот два пошаговых руководства как вывести иерархические данные с помшью репитера:
How To Display Hierarchical Data by Using Nested Repeater Controls and Visual C# .NET

A quick guide to using nested repeaters in ASP.NET
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37957820
xDMK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я нашел способ и кажется научился
...
Рейтинг: 0 / 0
Связь двух баз данных таблиц
    #37958617
Фотография timda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xDMKЯ нашел способ и кажется научился
это хорошо!
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Связь двух баз данных таблиц
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]