• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1639
  • Last Modified:

FormView - Multiple DataKeyNames - how do I retrieve one of the values?

Hi
I need to get the value of one of CostID from my DataKeyNames in a FormView.  I have tried:

DataKey key = fvCostJob.DataKey["CostID"];
string costID = key.Value.ToString();

My code is:
<asp:FormView ID="fvCostJob" runat="server" CellPadding="4"
            DataKeyNames="CostID,LoadID" DataSourceID="SqlDataSource1" ForeColor="#333333">

The line that's causing the problem is:
DataKey key = fvCostJob.DataKey["CostID"];
Intellisense tells me "cannot implicitly convert type 'Object' to ...DataKey"
0
Lorna70
Asked:
Lorna70
  • 4
  • 3
  • 2
  • +1
1 Solution
 
Carl TawnSystems and Integration DeveloperCommented:
The DataKey collection doesn't return a DataKey object it returns the actual value of the key. So, if your CostID is an integer you would do something like:

    int costId = int.Parse(fvCostJob.DataKey["CostID"].ToString());

Open in new window

0
 
SokratesCommented:
DataKey key = fvCostJob.DataKey["CostID"]; ----> IS NOT NESESSARY

TRY THIS:
string costID = fvCostJob.DataKey["CostID"].ToString();
0
 
Greg GambleProgrammerCommented:
string xxx = fvCostJob.DataKey["CostID"];
0
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

 
Carl TawnSystems and Integration DeveloperCommented:
Nice of you to ignore my post! Given that I put exactly the same thing earlier (ok, i assumed CostID was an int so did the cast, but the principle was the same)
0
 
SokratesCommented:
With all the respect...
carl_tawn you are right to a point. If you see question it says:

DataKey key = fvCostJob.DataKey["CostID"];
string costID = key.Value.ToString();

Read carefully and answer straight to the point. If you compare our answers you will see:
1) you did not mention that  DataKey key =.... is not needed
2) costID is a string not an integer.
my answer was staight to the point

peace
0
 
Carl TawnSystems and Integration DeveloperCommented:
Actually I think you'll find that I explained that the DataKey collection doesn't actually return a DataKey object, which is a little more detailed that "IS NOT NECESSARY".
0
 
Lorna70Author Commented:
Sorry Carl but I was in a hurry so just gave points to the best answer.  I think you've helped me before so next time I'll make sure I allocate points to you :-)  Thanks.
0
 
SokratesCommented:
The question was "I need to get the value of one of CostID from my DataKeyNames in a FormView" and two lines of code attached:
DataKey key = fvCostJob.DataKey["CostID"];
string costID = key.Value.ToString();
clean and clear i gave the solution..

"The DataKey collection doesn't return a DataKey object it returns the actual value of the key" it is not clear that is not needed.
0
 
Lorna70Author Commented:
Now now boys lol!  You have both been really helpful and as I said, I'll assign points to Carl the next time he helps.  Think no more should be said now :-)
0
 
SokratesCommented:
No worries Lorna70. Thanks for the points.     :)
carl_tawn i apologise if i disrespect you in any way...
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

  • 4
  • 3
  • 2
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now