Solved

Retrieve one specific record in C#

Posted on 2011-03-24
8
399 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
Ransomware-A Revenue Bonanza for Service Providers

Ransomware – malware that gets on your customers’ computers, encrypts their data, and extorts a hefty ransom for the decryption keys – is a surging new threat.  The purpose of this eBook is to educate the reader about ransomware attacks.

 

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
 
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

Forrester Webinar: xMatters Delivers 261% ROI

Guest speaker Dean Davison, Forrester Principal Consultant, explains how a Fortune 500 communication company using xMatters found these results: Achieved a 261% ROI, Experienced $753,280 in net present value benefits over 3 years and Reduced MTTR by 91% for tier 1 incidents.

Question has a verified solution.

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

Calculating holidays and working days is a function that is often needed yet it is not one found within the Framework. This article presents one approach to building a working-day calculator for use in .NET.
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.
Via a live example, show how to backup a database, simulate a failure backup the tail of the database transaction log and perform the restore.
Via a live example, show how to set up a backup for SQL Server using a Maintenance Plan and how to schedule the job into SQL Server Agent.

730 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