Пример #1
0
    private bool ValidateEmpPayComponentFile(DataTable dtEmpPayComponent, ref string validationMsg)
    {
        var validationResult          = true;
        AdminBusinessLogic bl         = new AdminBusinessLogic(sDataSource);
        DataTable          dtEmployee = bl.GetEmployeeList();

        var result = dtEmployee.Rows.Cast <DataRow>()
                     .Select(row => row["EmpNo"].ToString())
                     .ToArray();
        string filterQuery = string.Format("EmpNo NOT IN ({0})", string.Join(",", result));

        DataRow[] drInvalidEmployee = dtEmpPayComponent.Select(filterQuery);

        if (drInvalidEmployee.Length > 0)
        {
            foreach (DataRow dr in drInvalidEmployee)
            {
                validationMsg += string.Format("{0} Employee number not matches with existing records for {1}.", Environment.NewLine, dr["EmpName"].ToString());
            }
            validationResult = false;
        }

        var results = (from dr in dtEmpPayComponent.AsEnumerable()
                       where dr.Field <double>("TotalAmount").Equals(0)
                       select dr);

        if (results.Count() > 0)
        {
            foreach (DataRow dr in results)
            {
                validationMsg += string.Format("{0} TotalAmount should not be zero. Employee Name '{1}'", Environment.NewLine, dr["EmpName"]);
            }
            validationResult = false;
        }


        return(validationResult);
    }