Несколько значений из ListBox - PullRequest
0 голосов
/ 09 июня 2011

Я использую asp.net с vb.net. Я создал 2 списка; lseselect и lstroles. Списки lstselect содержит все доступные роли, которые можно добавить в lstroles. Как взять роли, которые были добавлены в lstroles, и превратить их в параметр для извлечения в мою базу данных при запуске хранимой процедуры?

Вот код для того, как мои списки разделяют роли:

Protected Sub btnRight_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnRight.Click
    If lstselect.SelectedIndex <> -1 Then
        lstroles.Items.Add(lstselect.SelectedItem.Text)
        lstselect.Items.Remove(lstselect.SelectedItem.Text)
    End If
End Sub

Protected Sub btnLeft_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnLeft.Click
    If lstroles.SelectedIndex <> -1 Then
        lstselect.Items.Add(lstroles.SelectedItem.Text)
        lstroles.Items.Remove(lstroles.SelectedItem.Text)
    End If
End Sub

Спасибо!

Ответы [ 2 ]

0 голосов
/ 09 января 2013

Метод использования табличных параметров, а также рекомендации по передовому опыту доступны здесь:

http://www.sommarskog.se/arrays-in-sql-2008.html

0 голосов
/ 09 июня 2011

Есть два способа сделать это:

1) Создать значения, разделенные запятыми, из списка выбранных элементов списка.Но это не рекомендуемый подход, так как вам необходимо проанализировать его в своей хранимой процедуре.

string commaSeparatedParams = string.Join(",", myArray);

2) Создайте XML, каждая роль будет узлом.И передайте XML в качестве параметра хранимой процедуры.Большинство баз данных поддерживают простое извлечение данных из XML.Кстати, какую базу данных вы используете?

3) Если вы используете MS SQL 2008, вы также можете использовать Table-Valued Parameters: http://msdn.microsoft.com/en-us/library/bb510489.aspx

, но это рекомендуется только для типа массовой вставкиоперации.Рекомендованный подход для вас - это, я бы сказал, XML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...