Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Xpath в XmlDataSource
|
|||
|---|---|---|---|
|
#18+
Я отбражаю xml файл с помощью XmlDataSource в GridView (может это и некорректно сфармулированно но надеюсь что меня поняли), но у меня никак не получается сделать поиск(вывод по маске или что-то в этор роде). В XmlDataSource есть такое свойство как XPath expression. Предполагаю что что там можно задавать по какой маске выводить, но пока у меня ничего не получается:(. Самостоятельный поиск инфы по этому вопросу результата не дал. Подскажите плиз как это делать. Есть вариант с xsl, но мне бы хотелось использовать возможности GridView, т.к. оне мне уже немного знакомы. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2006, 15:06 |
|
||
|
Xpath в XmlDataSource
|
|||
|---|---|---|---|
|
#18+
Я просто воспроизвел то, что указано в примере MSDN в разделе XmlDataSource.XPath Property . Там дан пример для asp:Repeater и он проработал. Тогда я добавил GridView и указал ему DataSourceID="XmlSource". Тоже проработало. Вот полный текст страницы <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <form id="Form1" runat="server"> <asp:XmlDataSource id="XmlSource" DataFile="bookstore.xml" runat="server" XPath="bookstore/genre[@name='fiction']"/> <asp:Repeater ID="Repeater1" DataSourceID="XmlSource" runat="server"> <ItemTemplate> <h1><%# XPath ("book/title") %></h1> <b>Price:</b> <%# XPath ("book/price") %> </ItemTemplate> </asp:Repeater> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataSourceID="XmlSource"> <Columns> <asp:BoundField DataField="name" HeaderText="name" SortExpression="name" /> </Columns> </asp:GridView> </form> </BODY> </HTML> причем bookstore.xml содержит <?xml version="1.0" encoding="utf-8" ?> <bookstore> <genre name="fiction"> <book ISBN="0771008139"> <title>The Handmaid's Tale</title> <price>12.95</price> <chapters> <chapter num="1" name="Introduction" /> <chapter num="2" name="Body" /> <chapter num="3" name="Conclusion" /> </chapters> </book> </genre> <genre name="novel"> <book genre="novel" ISBN="0192100262"> <title>Pride and Prejudice</title> <price>24.95</price> <chapters> <chapter num="1" name="Introduction" /> <chapter num="2" name="Body" /> <chapter num="3" name="Conclusion" /> </chapters> </book> </genre> </bookstore> Результат (source): <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <HTML> <BODY> <form name="Form1" method="post" action="Default.aspx" id="Form1"> <div> <input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTE2MTExNzQ1NA9kFgICAQ9kFgQCAw8WAh4LXyFJdGVtQ291bnQCARYCZg9kFgJmDxUCE1RoZSBIYW5kbWFpZCdzIFRhbGUFMTIuOTVkAgUPPCsADQEADxYGHgtfIURhdGFCb3VuZGceCVBhZ2VDb3VudAIBHwACAWQWAmYPZBYEAgEPZBYCZg8PFgIeBFRleHQFB2ZpY3Rpb25kZAICDw8WAh4HVmlzaWJsZWhkZBgBBQlHcmlkVmlldzEPZ2S+q9Ke9ZxpQw5N/4ethkvXI50SAw==" /> </div> <h1>The Handmaid's Tale</h1> <b>Price:</b> 12.95 <div> <table cellspacing="0" rules="all" border="1" id="GridView1" style="border-collapse:collapse;"> <tr> <th scope="col">name</th> </tr><tr> <td>fiction</td> </tr> </table> </div> </form> </BODY> </HTML> ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.10.2006, 19:20 |
|
||
|
Xpath в XmlDataSource
|
|||
|---|---|---|---|
|
#18+
Большое спасибо все работает тока XPath="bookstore/genre[@name='fiction']" сработает только если все name состоит только из fiction, а мне нужно чтобы срабатывало если name содержит fiction. Подскажите плиззз где посматреть или напишите. Заранее благодарен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2006, 14:45 |
|
||
|
Xpath в XmlDataSource
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, Аноним, Вы писали: А>Большое спасибо все работает тока XPath="bookstore/genre[@name='fiction']" сработает только если все name состоит только из fiction, а мне нужно чтобы срабатывало если name содержит fiction. Подскажите плиззз где посматреть или напишите. Заранее благодарен. "bookstore/genre[contains(@name,'fiction')]" Смотреть XPath functions. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2006, 16:25 |
|
||
|
|

start [/forum/topic.php?fid=18&msg=34040129&tid=1388780]: |
0ms |
get settings: |
10ms |
get forum list: |
19ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
38ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 253ms |
| total: | 398ms |

| 0 / 0 |
