I trying to pull out the values from a genericlist class. The values are being properly added to the list. I would like to interigate the values for verifying the required information has been entered prior to committing the the database.

Here is my genericlist class:

public class _QACertGenericList
{

public static string QACert_AssemblyRoushSerialNumber { get; set; }
public static int QACert_AssemblyTypeUID { get; set; }
public static string QACert_Description { get; set; }
public static bool QACert_CheckedFlag { get; set; }
public static bool QACert_IsCheckVerifyOnlyRequiredFlag { get; set; }
public static string QACert_ScannedValue { get; set; }
public static bool QACert_IsScanRequiredFlag { get; set; }
public static string QACert_EmployeeID { get; set; }

//********************************************************
//* BuildQACertArray
//********************************************************
#region "BuildQACertArray"

public static List<_QACertGenericList> BuildQACertArray(List<_QACertGenericList> QACertArray,
String AssemblyRoushSerialNumber,
int AssemblyTypeUID,
String Description,
bool CheckedFlag,
bool IsCheckVerifyOnlyRequiredFlag,
String ScannedValue,
bool IsScanRequiredFlag,
String EmployeeID)
{
_QACertGenericList _qaCertGenericList = new _QACertGenericList();
// _QACert _qaCert = new _QACert();

QACert_AssemblyRoushSerialNumber = AssemblyRoushSerialNumber;
QACert_AssemblyTypeUID = AssemblyTypeUID;
QACert_CheckedFlag = CheckedFlag;
QACert_Description = Description;
QACert_EmployeeID = EmployeeID;
QACert_IsCheckVerifyOnlyRequiredFlag = IsCheckVerifyOnlyRequiredFlag;
QACert_IsScanRequiredFlag = IsScanRequiredFlag;
QACert_ScannedValue = ScannedValue;

if (!(QACertArray == null))
{
QACertArray.Add(_qaCertGenericList);
return QACertArray;
}
else
{
List<_QACertGenericList> QACertGenericList = new List<_QACertGenericList>();

QACertGenericList.Add(_qaCertGenericList);

return QACertGenericList;
}
}

Here is the code that calls the generic list class:

private void gvQAChecklist_CellEndEdit(object sender, DataGridViewCellEventArgs e)
{
int iCol = e.ColumnIndex;
int iRow = e.RowIndex;

//* QA Checklist
CleanTechTraceabilityDS.ContentMGTQACheckListDataTable QACheckListDT =
new CleanTechTraceabilityDS.ContentMGTQACheckListDataTable();

_QAChecklistVerification _qaChecklistVerification = new _QAChecklistVerification();

bool LoadQACheckListFlag = _qaChecklistVerification.LoadQAChecklist(4,
ref QACheckListDT);

if (!(LoadQACheckListFlag))
{
lblerrorMSG.Text = "Load QA Check list failed";
return;
}

if (!(QACheckListDT.Count > 0))
{
lblerrorMSG.Text = "No QA checklist items found";
return;
}

List<_QACertGenericList> QACertGenericList = new List<_QACertGenericList>();

int i = 0;

int VerificationNeedCount = this.gvQAChecklist.RowCount;
//int VerifiedCount = 0;

foreach (CleanTechTraceabilityDS.ContentMGTQACheckListRow QACheckListDR in QACheckListDT.Rows)
{
QACertGenericList = _QACertGenericList.BuildQACertArray(QACertGenericList,
lblRoushSerialNo.Text,
Convert.ToInt32(QACheckListDR["AssemblyType_UID"]),
Convert.ToString(gvQAChecklist.Rows[i].Cells[0].Value),
Convert.ToBoolean(gvQAChecklist.Rows[i].Cells[1].Value),
Convert.ToBoolean(QACheckListDR["IsCheckVerifyRequiredFlag"]),
Convert.ToString(gvQAChecklist.Rows[i].Cells[2].Value),
Convert.ToBoolean(QACheckListDR["IsScanVerifyRequiredFlag"]),
Convert.ToString(gvQAChecklist.Rows[i].Cells[3].Value));

// THIS IS WHERE I WOULD LIKE TO INTERIGATE THE GENERIC LIST VALUES

var theArray = QACertGenericList.ToArray();

foreach (var item in theArray)
{
object inloop = item;
}

i++;

};

object test = QACertGenericList.ToArray();


}