Fråga : System.Data.DataRowView som får insatt in i SQL-serveren

Hälsningexperter, förmiddagen för

I har en utfärda med att få värdera från, Mång--Väljer Listbox in i en SQL-server 2005 bordlägger. När jag kör appen, allt fungerar korrekt bortsett från System.Data.DataRowView som får insatt in i den MemberCode kolonnen i The Listbox för data table.
, laddas från efter: dunkel avskiljare för

Try
som ny DataTable
dunkel strSelect som stränger = ”valda UserCode, sqlDA för
för Prov_Type = för N'U” OCH disciplinera INTE I (”för OT” (för UserCode+'- ”+FName+” ”+LName+”, ”+Discipline) som känt FRÅN tblUsersData VAR, ”liter”, ”ST”, ”MD”) ORDER AV LName "
dunkel som SqlClient.SqlDataAdapter = ny
lbTeamMember.DisplayMember sqlDA.Fill (avskiljare) för SqlClient.SqlDataAdapter (strSelect, cn)/> = ”känd "
lbTeamMember.ValueMember = ”UserCode "
lbTeamMember.DataSource =
för dt
fångar för att fela som SqlClient.SqlException
MessageBox.Show (”Ett fel uppstod i GetAllUsers -” & felar.
för meddelandet) avslutar Try

So, ja som den är destinerad till DataTablen, och det är rota av System.Data.DataRowViewen som får insatt in i databasen. Kodifiera är efter van vid gör insätta: cn för

If. Påstå = cn för ConnectionState.Closed Then
. Öppen ()
avslutar If

dunkelt I som Integer

dunkel strTeamName som stränger = dunkel strLeader för txtTeamName.Text
som stränger = dunkel strLeaderCode för lbTeamLeader.Text
som stränger = dunkel strMember för lbTeamLeader.SelectedValue
som stränger = dunkel myAdapter för lbTeamMember.SelectedValue.ToString
som ny SqlClient.SqlDataAdapter

myAdapter.InsertCommand = ny SqlClient.SqlCommand
myAdapter.InsertCommand.Connection = cn
myAdapter.InsertCommand.CommandType = CommandType.Text
myAdapter.InsertCommand.CommandText = ”MELLANLÄGGET IN I tblUserTeams (TeamName, LeaderCode, LeaderDiscipline, MemberCode, MemberDiscipline)”, & _
”VÄRDERAR (@TeamName, @LeaderCode,” & _
”fall, när @Leader lika ”%,%” därefter” & SUBSTRING för _
”(@Leader, CHARINDEX (”,”, @Leader) +1, LEN (@Leader) -CHARINDEX (”,”, @Leader)) annars '' avsluta, ”& _
”fall, när @membercodenågot liknande ”%-%” som LÄMNAS därefter (@MemberCode, (CHARINDEX (”-”, @MemberCode) - 1)) annan @MemberCode avslutar, ”& för _
”när SUBSTRING för _
för @MemberCode lik ”%, %” därefter” & ”(@MemberCode, CHARINDEX fall (”,”, @MemberCode) +1, LEN (@MemberCode) - CHARINDEX (”,”, @MemberCode för )) annars '' avsluta) ”

myAdapter.InsertCommand.Parameters. AddWithValue (”@TeamName”, strTeamName)
myAdapter.InsertCommand.Parameters. AddWithValue (”@LeaderCode”, strLeaderCode)
myAdapter.InsertCommand.Parameters. AddWithValue (”@Leader”, strLeader)
myAdapter.InsertCommand.Parameters. AddWithValue (”@MemberCode”, strMember)

Try
för I = 0 till lbTeamMember.SelectedItems.Count - 1
myAdapter.InsertCommand.Parameters (”@MemberCode”). Värdera =
Next
för
myAdapter.InsertCommand.ExecuteNonQuery för lbTeamMember.SelectedItems (I) .ToString () () fångar för att fela som SqlException
MsgBox (fela. Cn för
Finally
för meddelande). Nära ()
avslutar Try


I har spårat variablerna igenom till försök/fångar sats, och allt är bra upp till där. , att After det sätter in, alla korrekta data och de korrekta numrerar av rekord men System.Data.DataRowView i den MemberCode kolonnen. Jag har försökt flera olika metoder, men jag kan inte konvertera DataRowViewen till en skulle hjälp för String.

Any uppskattas,

JackW
" klar "

Svar : System.Data.DataRowView som får insatt in i SQL-serveren

               myAdapter.InsertCommand.Parameters (”@MemberCode”). Värdera = lbTeamMember.SelectedItems (I). Objekt (”LEGITIMATION”)


Om LEGITIMATIONEN är den kända sätta in, begränsa till listboxen
Andra lösningar  
 
programming4us programming4us