/// <summary>
        /// Creates the <see cref="HaushaltsRechner.Data.Model.REASON"/>.
        /// </summary>
        /// <param name="text">The text.</param>
        /// <returns>
        /// The new <see cref="HaushaltsRechner.Data.Model.REASON"/>, 
        /// or if Text already exists,the old <see cref="HaushaltsRechner.Data.Model.REASON"/>
        /// </returns>
        public static REASON CreateReason(string text)
        {
            using (var en = new HaushaltsrechnerEntities())
            {
                var rOld = en.REASON.Where(r => r.TEXT == text);

                if (!rOld.Any())
                {
                    var r = new REASON
                    {
                        ID = Guid.NewGuid(),
                        TEXT = text
                    };

                    en.REASON.AddObject(r);
                    en.SaveChanges();

                    return r;
                }

                return rOld.First();
            }
        }
        public string AddMovement(string data)
        {
            try
            {
                var movement = JsonConvert.DeserializeObject<NewMovement>(data);
                var en = new HaushaltsrechnerEntities();

                var acc = en.ACCOUNT.FirstOrDefault(a=>a.ID == movement.AccountID);
                var cat = en.CATEGORY.FirstOrDefault(c=>c.ID == movement.CategoryID);
                var user = en.USER.FirstOrDefault(u => u.ID == SessionManager.CurrentUser.ID);
                var rea = en.REASON.Where(r => r.TEXT == movement.Reason);

                REASON reason;
                if (rea.Any())
                {
                    reason = rea.First();
                }
                else
                {
                    reason = new REASON
                    {
                        ID = Guid.NewGuid(),
                        TEXT = movement.Reason
                    };
                    en.REASON.AddObject(reason);
                }

                var m = new MOVEMENT
                {
                    ID = movement.ID,
                    DATE_ADDED = movement.DateAdded,
                    DATE_EDIT = DateTime.Now,
                    AMOUNT = Decimal.Parse(movement.Amount.Replace("€",string.Empty)),
                    MESSAGE = movement.Message,
                    USER = user,
                    ACCOUNT = acc,
                    CATEGORY = cat,
                    REASON = reason
                };

                en.MOVEMENT.AddObject(m);
                en.SaveChanges();
                return bool.TrueString;
            }
            catch
            {
                return bool.FalseString;
            }
        }
 /// <summary>
 /// Erstellt ein neues REASON-Objekt.
 /// </summary>
 /// <param name="id">Anfangswert der Eigenschaft ID.</param>
 /// <param name="tEXT">Anfangswert der Eigenschaft TEXT.</param>
 public static REASON CreateREASON(global::System.Guid id, global::System.String tEXT)
 {
     REASON rEASON = new REASON();
     rEASON.ID = id;
     rEASON.TEXT = tEXT;
     return rEASON;
 }
 /// <summary>
 /// Veraltete Methode zum Hinzufügen eines neuen Objekts zum EntitySet 'REASON'. Verwenden Sie stattdessen die Methode '.Add' der zugeordneten Eigenschaft 'ObjectSet&lt;T&gt;'.
 /// </summary>
 public void AddToREASON(REASON rEASON)
 {
     base.AddObject("REASON", rEASON);
 }