// GET: Singer/Add
        // the view of adding singers to Singer table
        public IActionResult Add(string singer_state)
        {
            if (!LoginUtil.CheckIfLoggedIn(HttpContext))
            {
                return(View(nameof(Index)));
            }

            StateOfRequest mState;

            if (string.IsNullOrEmpty(singer_state))
            {
                mState = new StateOfRequest("SingNo");
            }
            else
            {
                mState = JsonUtil.GetObjectFromJsonString <StateOfRequest>(singer_state);
            }

            if ((mState.IsFirstAddRecord) || (mState.OrgId == 0))
            {
                // the first id of this page became the selected original id
                // or SateOfRequest.OrgId = 0
                mState.OrgId = mState.FirstId;
            }

            List <SelectListItem> singareaSelectList = _singareasManager.GetSelectListOfSingareas(new StateOfRequest("AreaNa"));

            ViewBag.SingareaList = singareaSelectList;
            mState.StartTime     = DateTime.Now;
            string temp_state = JsonUtil.SetJsonStringFromObject(mState);

            ViewBag.SingerState = temp_state; // pass the Json string to View

            Singer singer = new Singer();     // create a new Singer object

            return(View(singer));
        }