Exemple #1
0
        /// <summary>
        /// Saves Fingerprint template to UsersToEnroll file
        /// </summary>
        /// <param name="temp">The fingerprint template to save</param>
        /// <returns></returns>
        private bool SaveFingerprint(byte[] temp)
        {
            // Getting the finger whose template is to be saved
            if (_activeUser?.Fingers?.FirstOrDefault(a => a.Finger.IndexNumber == _activeFinger.Finger.IndexNumber) != null)
            {
                #region Save template to UsersToEnrol file in program memory
                // Variable to hold User currently being enrolled
                var user = EnrollmentOperations.GetUsersToEnrol().Users
                           .FirstOrDefault(x => x.User.Id == _activeUser.User.Id);

                // The User's particular finger which is being enrolled
                var finger = user?.Fingers.FirstOrDefault(p => p.Finger.IndexNumber == _activeFinger.Finger.IndexNumber);

                if (finger != null)
                {
                    // Assign gotten template to User's active finger
                    finger.Template = temp;
                }
                #endregion

                #region Save template to UsersToEnrol file in a path in User's PC
                // Convert UsersToEnrol to JSON string
                var jsonString = EnrollmentOperations.GetUsersToEnrol().ConvertToJson();

                // The path in user's PC to save UsersToEnrol JSON file
                string path = FileInformation.GetLoggedInUserFileDirectory() + @"\UsersToEnrol.json";
                string errMsg;

                // Saving UsersToEnrol JSON file to the specified path
                FileInformation fileInfo = new FileInformation();
                if (fileInfo.WriteFile(path, jsonString, out errMsg))
                {
                    MessageBox.Show("Fingerprint template saved succesfully!");
                    return(true);
                }
                else
                {
                    MessageBox.Show("Failed to save fingerprint template");
                    return(false);
                }
                #endregion
            }
            return(false);
        }