is there really nobody who can solve this?


A

André

Hi,

I have still this unsolved problem, so i post it again.
I hope someone replies and solves this or tells me it's impossible to do
that this way ...
My feeling is that it must work ...

I have a detailsview for inserting data, and a dropdownlist which
selectedValue must be used to fill one of the field of the detailsview.
Table 'pc' is related to table 'lok'.

I tried a lot of things, but still without succes. Here are the two methods
i tried with two different errors. It works only when i introduce directly a
value in "DefaultValue" (see below)

Thanks for help
André


1) first method:
asp:SqlDataSource ID="SqlDataSource1" runat="server" ....
....
InsertCommand="INSERT INTO [pc] ([na], [ty], [lok]) VALUES (?, ?, @lok)"
OldValuesParameterFormatString="original_{0}"
ProviderName="System.Data.OleDb"
<InsertParameters>
<asp:parameter Name="na" Type="String" />
<asp:parameter Name="ty" Type="String" />
</InsertParameters>
.....
Code-behind:
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object,
ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
lok = DropDownList1.SelectedValue
SqlDataSource1.InsertParameters.Add("lok", lokl)
End Sub

This gives: No value given for one or more required parameters
----------------------------------------------------------------------------
-------------------------
2) second method
asp:SqlDataSource ID="SqlDataSource1" runat="server" ....
....
InsertCommand="INSERT INTO [pc] ([na], [ty], [lok]) VALUES (?, ?, @lok)"
OldValuesParameterFormatString="original_{0}"
ProviderName="System.Data.OleDb"
<InsertParameters>
<asp:parameter Name="na" Type="String" />
<asp:parameter Name="ty" Type="String" />
<asp:parameter Name="lok" Type="String" DefaultValue="<%=lok %>" />
</InsertParameters>
....

Code-behind:
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object,
ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
lok = DropDownList1.SelectedValue
End Sub

This gives: You cannot add or change a record because a related record is
required in table 'lokl'
which means in fact that the value of the parameter is not passed!

It works when i give directly a value: <asp:parameter Name="lok"
Type="String" DefaultValue="1-45" />
 
Ad

Advertisements


Top