Solved

Retrieve one specific record in C#

Posted on 2011-03-24
8
395 Views
Last Modified: 2012-05-11
The first part of the attached code works and finds a random RecordId.  I also need the EmployeeId.  Since there is only one EmpId for each RcdId, I'm trying to find code to retrieve one record with a RecId of txtRcdId (which is the end result of the code).  
I added the last 2 lines to try and accomplish this but I get the error...
   'Randomizer.TimeClockPlusDataContext' does not contain a definition for 'Tables' and no    
   extension method 'Tables' accepting a first argument of  
   type 'Randomizer.TimeClockPlusDataContext' could be found (are you missing a using
   directive or an assembly reference?)      
I 'm really new to C# and could really use some detailed help.  My environment is Visual Studio, the language is C# and I'm attached to a SQL Server db.
 
//This works...
 var dbTimeClockPlus = new TimeClockPlusDataContext();
            var SearchInfo = (from c in dbTimeClockPlus.EmployeeLists where c.Suspend == false select c.RecordId).FirstOrDefault();
            Random r = new Random();
            int RcdId = SearchInfo == 0 ? 1 : SearchInfo;
            RcdId = r.Next(1, RcdId);
            txtRcdId.Text = Convert.ToString(RcdId);

//This part does not work...
            DataRow[] returnedRows;
            returnedRows = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);

Open in new window

0
Comment
Question by:BobRosas
  • 4
  • 4
8 Comments
 
LVL 14

Expert Comment

by:systan
ID: 35208763
DataRow[] returnedRows;
            returnedRows[1] = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
0
 

Author Comment

by:BobRosas
ID: 35208989
Thank you for your quick response!
I tried your suggestion but still get the same error.  Am I missing a definition somewhere.  I read that sometimes when you get this error it's because you need...
     using System.Linq;
but I have that.  Maybe I'm missing something else?  This is a newly set up form so maybe I'm missing something basic?  
0
 
LVL 14

Expert Comment

by:systan
ID: 35209110
yes_its_a_linQ_usage;

did_you_try;
DataRow returnedRows = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
or
DataRow[] returnedRows;
returnedRows[0] = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
0
 

Author Comment

by:BobRosas
ID: 35209206
I was doing the 2nd way you listed.  So I just tried the 1st way.  They are both giving me the same error.
0
Best Practices: Disaster Recovery Testing

Besides backup, any IT division should have a disaster recovery plan. You will find a few tips below relating to the development of such a plan and to what issues one should pay special attention in the course of backup planning.

 
LVL 14

Expert Comment

by:systan
ID: 35209308
if_youve_tried_this_?,
DataRow returnedRows = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);

then
there's_a_wrong_in_your_firsts_lines;
//This works...
 var dbTimeClockPlus = new TimeClockPlusDataContext();
            var SearchInfo = (from c in dbTimeClockPlus.EmployeeLists where c.Suspend == false select c.RecordId).FirstOrDefault();
            Random r = new Random();
            int RcdId = SearchInfo == 0 ? 1 : SearchInfo;
            RcdId = r.Next(1, RcdId);
            txtRcdId.Text = Convert.ToString(RcdId);

that_if_your_sure_about;
dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
0
 

Author Comment

by:BobRosas
ID: 35209458
I'm not sure what I'm looking for.  If I run the following code all by itself...
           var dbTimeClockPlus = new TimeClockPlusDataContext();
           var SearchInfo = (from c in dbTimeClockPlus.EmployeeLists  where c.Suspend == false select c.RecordId).FirstOrDefault();
            Random r = new Random();
            int RcdId = SearchInfo == 0 ? 1 : SearchInfo;
            RcdId = r.Next(1, RcdId);
            txtRcdId.Text = Convert.ToString(RcdId);

Then my form displays, I press the button and a random RcdId appear in my text box.

If I add this code to the above code...
          DataRow[] returnedRows;
          returnedRows[0] = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
I get the above error.

If I add just this one line of code instead of the 2 right above....
           DataRow returnedRows = dbTimeClockPlus.Tables["EmployeeLists"].Select(txtRcdId);
I still get the same error.
0
 
LVL 14

Accepted Solution

by:
systan earned 125 total points
ID: 35209633
>>random RcdId appear in my text box

I_think_you_want;
returnedRows.Add
or
a_collection_of_rows?

please_see_the_links;
http://msdn.microsoft.com/en-us/library/system.data.datarowview%28v=VS.80%29.aspx
http://msdn.microsoft.com/en-us/library/system.data.datarowcollection%28v=VS.80%29.aspx
0
 

Author Closing Comment

by:BobRosas
ID: 35209979
Thank you for your time and the links.  Neither one of them look like they can take the result of what I have and display another field from the same record but I do apprecaite you trying and I can try posting another question.  Thanks again!
0

Featured Post

NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Why is this different from all of the other step by step guides?  Because I make a living as a DBA and not as a writer and I lived through this experience. Defining the name: When I talk to people they say different names on this subject stuff l…
Load balancing is the method of dividing the total amount of work performed by one computer between two or more computers. Its aim is to get more work done in the same amount of time, ensuring that all the users get served faster.
Using examples as well as descriptions, and references to Books Online, show the documentation available for date manipulation functions and by using a select few of these functions, show how date based data can be manipulated with these functions.
Via a live example, show how to extract insert data into a SQL Server database table using the Import/Export option and Bulk Insert.

948 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now