public ActionResult Create(CreateTeamViewModel viewmodel, HttpPostedFileBase avatar)
        {
            if (ModelState.IsValid)
            {
                try
                {
                        Team team = new Team { Name = viewmodel.Name };

                        _teamDb.Add(team);

                        //if an image has been provided then upload it
                        if (avatar != null && avatar.ContentLength > 0)
                        {

                            AvatarImage image = AvatarUploader.UploadFile2(Server, avatar, team.ID, AvatarTypeEnum.Team);

                            team.AvatarName = image.Name;

                            if (!_teamDb.Update(team)) //update the avatar path after database has set PK
                            {
                                return Content("An error has occurred on the server");//just temporary, create error view
                            }
                        }

                        return RedirectToAction("Details", new { id = team.ID });
                }
                catch (Exception e)
                {
                    //log exception
                    //return error message to user
                    ModelState.AddModelError("", "Exception occured on the server");
                }

            }

            return View();
        }
 partial void DeleteTeam(Team instance);
 partial void UpdateTeam(Team instance);
 partial void InsertTeam(Team instance);