#c# #asp.net #.net #sql-server #vb.net
#c# #asp.net #.net #sql-сервер #vb.net
Вопрос:
Я использую поле со списком, и мне нужно заполнить данные из моей базы данных sql Server, используя строку подключения.
Что я пробовал:
Imports System
Imports System.Collections.Generic
Imports System.Web
Imports System.Xml
Imports System.Windows.Forms
Imports System.Data.SqlClient
Imports System.Configuration
Public Class Form1
Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
Dim VB = ConfigurationManager.ConnectionString["HMDB"].ConnectionString
Using Con = New SqlConnection(VB)
Dim SqlText = "Select DocEntry from dbo.Master1"
Dim cmd = New SqlCommand(SqlText, Con)
Con.Open()
ComboBox1.DataSource = cmd.ExecuteReader()
ComboBox1.DataBind()
End Using
End Sub
End Class
App.Config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configuration>
<connectionStrings>
<add name ="HMDB"
connectionString ="Data Source=DESKTOP-68VGRJG;Database=master;integrated security =SSPI"/>
</connectionStrings>
</configuration>
</configuration>
Я не знаю, где я допустил ошибку. Мне нужно вызвать данные в sql server в поле со списком, и я должен сделать их видимыми.
Комментарии:
1. Какую ошибку вы получаете?
Ответ №1:
Возможно, вам захочется заполнить поле со списком сразу после загрузки формы, а не при изменении события ComboBox.
Напишите тот же код в конструкторе Form1().
public Form1()
{
InitializeComponent();
Dim VB = ConfigurationManager.ConnectionString["HMDB"].ConnectionString
Using Con = New SqlConnection(VB)
Dim SqlText = "Select DocEntry from dbo.Master1"
Dim cmd = New SqlCommand(SqlText, Con)
Con.Open()
ComboBox1.DataSource = cmd.ExecuteReader()
ComboBox1.DataBind()
End Using
}
Комментарии:
1. Данные не передаются в мое поле со списком.