2012-02-08 2 views
1

У меня есть этот запрос будетTreeView значение Выбранный узел с SQL запроса

Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM GPS1_MAP where sta_id=" & TreeView1.SelectedNode.Value, con) 

и код TreeView здесь

<asp:TreeView ID="TreeView1" runat="server" AutoGenerateDataBindings="False" Font-Names="Arial" 
         Font-Size="Smaller" ForeColor="#C04000"> 
         <Nodes> 
          <asp:TreeNode Text="Paties"> 
           <asp:TreeNode Text="CHENAB COTTON MILLS" Value="CHENAB COTTON MILLS"></asp:TreeNode> 
           <asp:TreeNode Text="AJMER COTTON GINNERS" Value="AJMER COTTON GINNERS"></asp:TreeNode> 
          </asp:TreeNode> 
         </Nodes> 
        </asp:TreeView> 

Но ее не работает с slected значением дерева, что может эту проблему?

ответ

1

Value вашего выбранного узла (например, <asp:TreeNode Text="CHENAB COTTON MILLS" Value="CHENAB COTTON MILLS"></asp:TreeNode>) - это строка CHENAB COTTON MILLS.

Поэтому ваш SQL заявление будет:

SELECT * FROM GPS1_MAP where sta_id=CHENAB COTTON MILLS 

Обратите внимание, что нет никаких кавычек вокруг CHENAB COTTON MILLS. Поэтому ваше заявление недействительно.

Вы можете либо добавить кавычки значения, такие как:

Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM GPS1_MAP where sta_id='" & TreeView1.SelectedNode.Value & "'", con) 

Или использовать named parameters, что является лучшим решением (поскольку она предотвращает атаки SQL-инъекции).

+0

Да, я получил его Спасибо – user1103342

+0

Сэр Можно ли заполнить Tree View из базы данных, если у вас есть идея или ссылка, тогда скажите мне – user1103342

+0

@ user1103342 Проверьте эту статью: http://quickstarts.asp.net/QuickStartv20/aspnet /doc/ctrlref/navigation/treeview.aspx –