Esempio n. 1
0
        /// -----------------------------------------------------------------------------
        /// <summary>
        /// GetItemHTMLText retourne :
        /// la ligne associée à son id (iHtmlTextID) si celui-ci est spécifié
        /// la ligne la plus récemment modifiée associée à l'Item (itemId)
        /// </summary>
        /// <remarks>
        /// </remarks>
        /// <param name="itemId">l'ID de l'Item (FilInfo)</param>
        /// <param name="iHtmlTextID"></param>
        /// <history>
        /// </history>
        /// -----------------------------------------------------------------------------
        public ItemHTMLText GetItemHTMLText(int itemId, int iHtmlTextID = -1)
        {
            ItemHTMLText t = null;

            try
            {
                if (MVCTestBase.StringToInt(itemId.ToString()) > 0)
                {
                    if (MVCTestBase.StringToInt(iHtmlTextID.ToString()) > 0)
                    {
                        using (IDataContext ctx = DataContext.Instance())
                        {
                            var rep = ctx.GetRepository <ItemHTMLText>();
                            t = rep.GetById(iHtmlTextID, itemId);
                        }
                    }
                    else
                    {
                        t = GetItemsHTMLText(itemId).OrderByDescending(x => x.ModifDate).First();
                    }
                }
            }
            catch (Exception ex)
            {
                Exceptions.LogException(ex);
            }
            return(t);
        }
Esempio n. 2
0
        /// -----------------------------------------------------------------------------
        /// <summary>
        ///   CreateItemHTMLText ajoute une ligne à la table MVCTest_Items_HTMLText
        /// </summary>
        /// <remarks>
        /// Supprime si besoin les versions anciennes
        /// </remarks>
        /// <param name = "t">la ligne à insérer</param>
        /// <param name = "iMaxHistorique">le nombre max de version conservée</param>
        /// <history>
        /// </history>
        /// -----------------------------------------------------------------------------
        public void CreateItemHTMLText(ItemHTMLText t, int iMaxHistorique)
        {
            int iVersion = 0;

            using (IDataContext ctx = DataContext.Instance())
            {
                iVersion = MVCTestBase.StringToInt(ctx.ExecuteScalar <Int32>(CommandType.Text, "select ISNULL(max(VersionNumber),0) AS VersionNumber from MVCTest_Items_HTMLText where ItemID=@0", t.ItemId).ToString(), 0);

                iVersion++;
                t.VersionNumber = iVersion;
                t.CreaDate      = DateTime.UtcNow.ToLocalTime();
                t.ModifDate     = DateTime.UtcNow.ToLocalTime();

                var rep = ctx.GetRepository <ItemHTMLText>();
                rep.Insert(t);

                if (iMaxHistorique == 0)
                {
                    iMaxHistorique = 5;
                }
                ctx.Execute(CommandType.Text, "delete from MVCTest_Items_HTMLText where ItemID=@0 and VersionNumber <= (@1 - @2)", t.ItemId, iVersion, iMaxHistorique);
            }
        }