示例#1
0
        //get data to above function
        public bool ImportData(out int count, ExcelPackage package)
        {
            count = 0;
            var check  = true;
            var result = false;

            try
            {
                //data start at column 1 and row 2
                int            startColumn = 1;
                int            startRow    = 2;
                ExcelWorksheet worksheet   = package.Workbook.Worksheets[1];
                object         data        = null;
                //get DB
                ChatDbcontext db = new ChatDbcontext();

                do
                {
                    data = worksheet.Cells[startRow, startColumn].Value;
                    //get Username
                    object Name = worksheet.Cells[startRow, startColumn + 1].Value;
                    //get email
                    object Email = worksheet.Cells[startRow, startColumn + 2].Value;

                    if (data != null)
                    {
                        var isImported = SaveStudent(Name.ToString().Trim()
                                                     , Email.ToString().Trim(), db);
                        if (isImported)
                        {
                            count++;
                            result = true;
                        }
                    }
                    startRow++;
                } while (data != null);
            }
            catch (Exception)
            {
                check = false;
            }
            return(result);
        }
示例#2
0
        //check ability to save new student from excel
        public bool SaveStudent(string fullname, string email, ChatDbcontext db)
        {
            var    result = false;
            Random rd     = new Random();

            try
            {
                //save student
                //if students exist before, then not import again
                //just import new student not exists in system
                if (db.Users.Where(x => x.Email.Equals(email)).Count() == 0)
                {
                    var user = new User();
                    user.Name     = fullname.Trim();
                    user.Email    = email.Trim();
                    user.PassWord = HashPassword.ComputeSha256Hash(1.ToString().Trim());
                    user.DoB      = DateTime.Now;
                    string[] emailSplitString = email.Split('@');
                    user.UserName = emailSplitString[0];
                    db.Users.Add(user);
                    db.SaveChanges();

                    int        userId = db.Users.Max(x => x.Id);
                    ListFriend friend = new ListFriend()
                    {
                        UserId = userId
                    };

                    db.ListFriends.Add(friend);
                    db.SaveChanges();
                    result = true;
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(result);
        }