/// <summary>
 /// Deletes the ModelFactorData.
 /// </summary>
 /// <param name="modelfactorData"></param>
 public static void Delete(ModelFactorData modelfactorData)
 {
     using (IdeaContext context = ContextManager.GetNewDataContext())
     {
         ModelFactorData aux = context.ModelFactorDatas.FirstOrDefault(mfd => mfd.IDModelFactorData == modelfactorData.IDModelFactorData);
         context.ModelFactorDatas.Remove(aux);
         context.SaveChanges();
     }
 }
        /// <summary>
        /// Returns the major date with data for the model.
        /// </summary>
        /// <param name="idModel"></param>
        /// <returns></returns>
        public static DateTime?GetMajorDate(int idModel)
        {
            using (IdeaContext context = ContextManager.GetNewDataContext())
            {
                ModelFactorData aux = (from mfd in context.ModelFactorDatas
                                       join mf in context.ModelFactors
                                       on mfd.IDModelFactor equals mf.IDModelFactor
                                       where mf.IDModel == idModel
                                       select mfd).OrderByDescending(mfd => mfd.Date).FirstOrDefault();

                if (aux != null)
                {
                    return(aux.Date);
                }
            }

            return(null);
        }
        /// <summary>
        /// Saves the ModelFactorDatas.
        /// </summary>
        /// <param name="modelFactorData"></param>
        /// <returns></returns>
        public static ModelFactorData Save(ModelFactorData modelFactorData)
        {
            using (IdeaContext context = ContextManager.GetNewDataContext())
            {
                List <ModelFactorData> mfds = context.ModelFactorDatas.Where(
                    mfd2 => mfd2.Date == modelFactorData.Date &&
                    mfd2.IDModelFactor == modelFactorData.IDModelFactor &&
                    mfd2.IDRegion == modelFactorData.IDRegion &&
                    mfd2.IDModelFactorData != modelFactorData.IDModelFactorData).ToList();

                foreach (ModelFactorData factorData in mfds)
                {
                    context.ModelFactorDatas.Remove(factorData);
                }

                context.ModelFactorDatas.AddOrUpdate(modelFactorData);

                context.SaveChanges();
                return(modelFactorData);
            }
        }
 /// <summary>
 /// Saves the ModelFactorData (service).
 /// </summary>
 /// <param name="modelFactorData"></param>
 /// <returns></returns>
 public static ModelFactorData Save(ModelFactorData modelFactorData)
 {
     return(GetService().Save(modelFactorData));
 }
 /// <summary>
 /// Deletes the ModelFactorData (service).
 /// </summary>
 /// <param name="modelfactordata"></param>
 public static void Delete(ModelFactorData modelfactordata)
 {
     GetService().Delete(modelfactordata);
 }
 /// <summary>
 /// Returns a ModelFactorData (service).
 /// </summary>
 /// <param name="modelFactorData"></param>
 /// <returns></returns>
 public static ModelFactorData Get(ModelFactorData modelFactorData)
 {
     return(GetService().Get(modelFactorData.IDModelFactorData));
 }
 public ModelFactorData Save(ModelFactorData modelFactorData)
 {
     return(ModelFactorDataManager.Save(modelFactorData));
 }
 public void Delete(ModelFactorData modelFactorData)
 {
     ModelFactorDataManager.Delete(modelFactorData);
 }