Beispiel #1
0
        /// <summary>
        /// Aggiunge una nuova DocumentUnit e collega i documenti collegati passati
        /// </summary>
        /// <param name="unit">DocumentUnit da inserire</param>
        /// <param name="documents">Elenco dei riferimenti ai documenti da collegare</param>
        /// <returns>DocumentUnit creata</returns>
        public static DocumentUnit UdsAddDocumentUnitWithDocuments(DocumentUnit unit, DocumentUnitChain[] documents)
        {
            EntityProvider provider = DbProvider;

            using (DbTransaction tran = provider.BeginNoSave())
            {
                try
                {
                    var unitRes = provider.UdsAddDocumentUnit(unit);
                    if (unitRes != null)
                    {
                        provider.UdsDocumentUnitAddDocuments(unitRes.IdDocumentUnit, documents, false);
                    }

                    provider.SaveChanges();
                    tran.Commit();
                    return(unitRes);
                }
                catch
                {
                    try
                    {
                        tran.Rollback();
                    }
                    catch
                    {
                    }
                    throw;
                }
            }
        }