/// <summary>
        /// single item insert/update with entity input
        /// </summary>
        /// <param name="input">to-be-insert/updated instance of entity class</param>
        public async Task <Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahStatusCode> Upsert(Elmah.DataSourceEntities.ElmahStatusCode input)
        {
            //log.Info(string.Format("{0}: Update", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Started.ToString()));
            var _retval = new Elmah.DataSourceEntities.DataAccessLayerMessageOfEntityCollectionElmahStatusCode();

            _retval.OriginalValue = new List <Elmah.DataSourceEntities.ElmahStatusCode>();
            _retval.OriginalValue.Add(input);

            if (input != null)
            {
                var _LinqItem = await GetLinqObjectByIdentifier(input);

                if (_LinqItem == null)
                {
                    _LinqItem = input.GetAClone <Elmah.EntityFrameworkContext.ElmahStatusCode>();
                    LinqContext.ElmahStatusCode.Add(_LinqItem);
                }
                else
                {
                    input.CopyTo <Elmah.EntityFrameworkContext.ElmahStatusCode>(_LinqItem);
                }

                await this.LinqContext.SaveChangesAsync();

                Elmah.DataSourceEntities.ElmahStatusCode _Result = new Elmah.DataSourceEntities.ElmahStatusCode();
                _Result.CopyFrom <Elmah.EntityFrameworkContext.ElmahStatusCode>(_LinqItem);
                _retval.Result = new List <Elmah.DataSourceEntities.ElmahStatusCode>();
                _retval.Result.Add(_Result);
            }
            //log.Info(string.Format("{0}: Update", Framework.Models.LoggingOptions.Data_Access_Layer_Process_Started.ToString()));
            return(_retval);
        }