Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 658
  • Last Modified:

ObjectDataSource retrieving column value

Hi Guys,

I'm new to ASP.NET and wondering what the problem is with the following code. - see below. Basically what I have got is a FormView control which is getting it's data from a ObjectDataSource control. This all works fine. The ObjectDataSource uses a different source of data depending on the querystring (LocalPartnerID=...)

Now on my page load event, I call the method FindTypeEdit() in order to the value of one of my columns "Type" that has comma separated values like: Government, Non Government, International and pass it as a string to a method that will check if these selections are on the TypeCheckBoxList items choices to display them.

I'm using ObjectDataSource1.selectedparameters in hopes of accessing the values but well being not so familiar with ADO.NET I'm failing to select anything.
Please see below for my code

Many thanks in advance for your help!
Jeewai

ObjectDataSOurce connected to FormView:
<asp:ObjectDataSource ID="ObjectDataSource1" runat="server" DeleteMethod="Delete" InsertMethod="Insert" OldValuesParameterFormatString="original_{0}"     SelectMethod="GetDataLocalPartners"              TypeName="ICRSDataSetTableAdapters.tblLocalPartnerTableAdapter"
              UpdateMethod="Update">
              <DeleteParameters><asp:Parameter Name="Original_LocalPartnerID" Type="Byte" />
              </DeleteParameters>
              <UpdateParameters>   ...   </UpdateParameters>
              <SelectParameters> <asp:QueryStringParameter Name="LocalPartnerID"
                      QueryStringField="LocalPartnerID" Type="Byte" /> </SelectParameters>
              <InsertParameters>   ...    </InsertParameters>
          </asp:ObjectDataSource>
Public Sub FindTypeEdit()
        Dim TypeCheckBoxListEdit As CheckBoxList = CType(FormView1.FindControl("Tabcontainer1").FindControl("TabPanel1").FindControl("TypeCheckBoxListEdit"), CheckBoxList)
        'This was as a trial - hardcoded string of items -,representing possible values for the
        'column "Type" . This was to ensure that checkboxList items are passed and display ok
        'on CheckBoxList. 'Dim preferences As String = "Government,Non Government,International"
 
        'Now, in my real life senario, I need to get the value of column "Type"
        'and pass it as a string. This is where I fail.
        ObjectDataSource1.SelectParameters("Type").DefaultValue ' not working
        Dim preferences As String = ?????
 
        'The rest below works perfectly well provided I get string variables in my preference string
        Dim li As ListItem
        Dim preference() As String = preferences.Split(",")
        'Clear any previous setting
        TypeCheckBoxListEdit.SelectedIndex = -1
        For Each pref As String In preference
            li = TypeCheckBoxListEdit.Items.FindByValue(pref)
            If li Is Nothing = False Then
                li.Selected = True
            End If
        Next
    End Sub

Open in new window

0
jeewai
Asked:
jeewai
2 Solutions
 
guru_samiCommented:
ObjectDataSource1.SelectParameters("Type").DefaultValue ' not working
Now Your ObjectDataSource1 does not have any Paramert Name "Type"..it has only one parameter defined:
<asp:QueryStringParameter Name="LocalPartnerID" QueryStringField="LocalPartnerID" Type="Byte" />

So I am not sure what you are trying to do....not getting any clear idea what is the exact problem.
0
 
jeewaiAuthor Commented:
Thanks Guru_Sami for your comments,

Sorry for not being so clear in my post. What I wanted was simply to retrieve data from a certain column and pass it as a string. I have searched additional help in other forums and found out what to do:
create a hidden field inside my formview that is bound to that specific column,.. and simply pass the retrieved value as a string..

Jeewai

<asp:TextBox ID="HidTypeTextBoxEdit" runat="server" Visible="False" Text='<%# Bind("Type") %>'></asp:TextBox>



Public Sub FindTypeEdit()
Dim TypeCheckBoxListEdit As CheckBoxList = CType(FormView1.FindControl("Tabcontainer1").FindControl("TabPanel1").FindControl("TypeCheckBoxListEdit"), CheckBoxList)
'Get values from Hidden Type textField 
Dim HidTypeTextBoxEdit As TextBox = CType(FormView1.FindControl("Tabcontainer1").FindControl("TabPanel1").FindControl("HidTypeTextBoxEdit"), TextBox)
Dim preferences As String = HidTypeTextBoxEdit.Text
Dim li As ListItem
Dim preference() As String = preferences.Split(",")
'Clear any previous setting 
TypeCheckBoxListEdit.SelectedIndex = -1
li = TypeCheckBoxListEdit.Items.FindByValue(pref)
For Each pref As String In preferenceIf li Is Nothing = False Then 
li.Selected = True 
End If 
Next 
End Sub

Open in new window

0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now