示例#1
0
        internal static void Dispatcher_Create(fwk_ServiceDispatcher disp)
        {
            using(Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext   ())
            {

                dc.fwk_ServiceDispatchers.InsertOnSubmit(disp);
                dc.SubmitChanges();
            }
        
        }
示例#2
0
 /// <summary>
 /// Actualiza fwk_Param
 /// </summary>
 /// <param name="paramBE"></param>
 /// <param name="userUpdateId"></param>
 /// <param name="cnnStringName"></param>
 public static void Update(ParamBE paramBE, Guid?userUpdateId, string cnnStringName)
 {
     using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
     {
         Fwk.ConfigData.fwk_Param param = dc.fwk_Params.Where(p => p.Id.Equals(paramBE.Id)).FirstOrDefault();
         if (param != null)
         {
             param.Enabled     = true;
             param.Name        = paramBE.Name;
             param.Culture     = paramBE.Culture;
             param.Description = paramBE.Description;
             //param.ParamId = paramBE.ParamId;
             //param.ParentId = paramBE.ParentId;
             dc.SubmitChanges();
         }
     }
 }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="paramBE"></param>
        /// <param name="userId"></param>
        /// <param name="cnnStringName"></param>
        public static void Create(ParamBE paramBE, Guid?userId, string cnnStringName)
        {
            using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
            {
                Fwk.ConfigData.fwk_Param param = new ConfigData.fwk_Param();
                param.Culture     = paramBE.Culture;
                param.Description = paramBE.Description;
                param.Enabled     = true;
                param.Name        = paramBE.Name;
                param.ParamId     = paramBE.ParamId;
                param.ParentId    = paramBE.ParentId;

                dc.fwk_Params.InsertOnSubmit(param);
                dc.SubmitChanges();
                paramBE.Id = param.Id;
            }
        }
示例#4
0
 /// <summary>
 /// Permite eliminar por
 /// solo parentId
 /// solo paramId
 /// por ambos
 /// no permite que ambos sean Null
 /// </summary>
 /// <param name="paramId"></param>
 /// <param name="parentId"></param>
 /// <param name="cnnStringName"></param>
 public static void Delete(int?paramId, int?parentId, string cnnStringName)
 {
     //no permite que ambos sean Null
     if (paramId.HasValue == false || parentId.HasValue == false)
     {
         throw new Fwk.Exceptions.TechnicalException("Debe proporcinar almeno uno de los dos parametros");
     }
     using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
     {
         var paramsList = dc.fwk_Params.Where(p => (paramId.HasValue == false || p.ParamId.Equals(paramId.Value)) &&
                                              (parentId.HasValue == false || p.ParentId.Equals(parentId.Value)));
         foreach (fwk_Param p in paramsList)
         {
             dc.fwk_Params.DeleteOnSubmit(p);
         }
         dc.SubmitChanges();
     }
 }
示例#5
0
        internal static void Dispatcher_Update(fwk_ServiceDispatcher disp)
        {

            using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext())
            {
                var disp_db = dc.fwk_ServiceDispatchers.Where(p => p.InstanseName.Equals(disp.InstanseId)).FirstOrDefault();

                disp_db.AuditMode = disp.AuditMode;
                disp_db.CompanyName = disp.CompanyName;
                disp_db.HostIp = disp.HostIp;
                disp_db.HostName = disp.HostName;
                disp_db.InstanseName = disp.InstanseName;
                disp_db.Logo = disp.Logo;
                disp_db.Port = disp.Port;
                disp_db.Url_URI = disp.Url_URI;

                dc.SubmitChanges();
            }
        }
示例#6
0
        /// <summary>
        /// Realiza cambios a una propiedad.-
        /// </summary>
        /// <param name="provider">Proveedor de configuracion</param>
        /// <param name="groupName">Nombre del grupo donde se encuentra la propiedad</param>
        /// <param name="property">Propiedad actualizada. Este objeto puede contener todos sus valores modifcados</param>
        /// <param name="propertyName">Nombre de la propiedad que se mofdifico.- Este valor es el original sin modificacion</param>
        internal static void ChangeProperty(ConfigProviderElement provider, string groupName, Key property, string propertyName)
        {

            try
            {
                using (FwkDatacontext dc = new FwkDatacontext(GetCnnString(provider)))
                {

                    var prop = dc.fwk_ConfigManagers.Where(config =>
                               config.ConfigurationFileName.ToLower().Equals(provider.BaseConfigFile.ToLower())
                               && config.group.ToLower().Equals(groupName.ToLower())
                               && config.key.ToLower().Equals(propertyName.ToLower())
                   ).FirstOrDefault<fwk_ConfigManager>();
                    prop.value = property.Value.Text;
                    prop.encrypted = property.Encrypted;
                    prop.key = property.Name;
                    dc.SubmitChanges();
                }

            }
            catch (Exception ex)
            {
                TechnicalException te = new TechnicalException("Problemas con Fwk.Configuration al realizar operaciones con la base de datos \r\n", ex);
                ExceptionHelper.SetTechnicalException<DatabaseConfigManager>(te);
                te.ErrorId = "8200";
                throw te;

            }
        }
示例#7
0
        /// <summary>
        /// Cambia el nombre de un grupo.-
        /// </summary>
        /// <param name="provider">Proveedor de configuracion</param>
        /// <param name="groupName">Nombre del grupo</param>
        /// <param name="newGroupName">Nuevo nombre del grupo</param>
        internal static void ChangeGroupName(ConfigProviderElement provider, string groupName, string newGroupName)
        {
            //ConfigurationFile wConfigurationFile = GetConfig(provider);
            try
            {
                using (FwkDatacontext dc = new FwkDatacontext(GetCnnString(provider)))
                {
                    var configs = dc.fwk_ConfigManagers.Where(p =>
                          p.group.Equals(groupName)
                          && p.ConfigurationFileName.Equals(provider.BaseConfigFile));

                    foreach (fwk_ConfigManager confg in configs)
                    {
                        confg.group = newGroupName;
                    }
                    dc.SubmitChanges();
                }


            }
            catch (Exception ex)
            {
                TechnicalException te = new TechnicalException("Problemas con Fwk.Configuration al realizar operaciones con la base de datos \r\n", ex);
                ExceptionHelper.SetTechnicalException<DatabaseConfigManager>(te);
                te.ErrorId = "8200";
                throw te;

            }
        }
示例#8
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="provider">Proveedor de configuracion</param>
        /// <param name="group">Grupo</param>
        internal static void AddGroup(ConfigProviderElement provider, Group group)
        {
            
            ConfigurationFile wConfigurationFile = GetConfig(provider);


            wConfigurationFile.Groups.Add(group);
            fwk_ConfigManager confg;

            try
            {
                using (FwkDatacontext dc = new FwkDatacontext(GetCnnString(provider)))
                {
                    foreach (Key k in group.Keys)
                    {
                        confg = new fwk_ConfigManager();
                        confg.ConfigurationFileName = provider.BaseConfigFile;
                        confg.key = k.Name;
                        confg.encrypted = k.Encrypted;
                        confg.value = k.Value.Text;
                        confg.group = group.Name;
                        dc.fwk_ConfigManagers.InsertOnSubmit(confg);

                    }
                    dc.SubmitChanges();
                }

            }
            catch (Exception ex)
            {
                TechnicalException te = new TechnicalException("Problemas con Fwk.Configuration al realizar operaciones con la base de datos \r\n", ex);
                ExceptionHelper.SetTechnicalException<DatabaseConfigManager>(te);
                te.ErrorId = "8200";
                throw te;
            }
        }
示例#9
0
        /// <summary>
        ///Si grupo no existe en un provider p/bd es por que seguramente se agrego el grupo por la aplicacion del fwk y ahun este grupo se encuentra vasio.
        ///y no es posible agregar grupos vasios ya que los grupos tienen que tener al menos una propiedad para ser agregados a la tabla
        /// </summary>
        /// <param name="provider">Proveedor de configuracion</param>
        /// <param name="key"></param>
        /// <param name="groupName">Nombre del gruop que contiene las propiedades</param>
        internal static void AddProperty(ConfigProviderElement provider, Key key, string groupName)
        {
            
            System.Text.StringBuilder sqlCommand = new StringBuilder();

            ConfigurationFile wConfigurationFile = GetConfig(provider); 
            Group wGroup = wConfigurationFile.Groups.GetFirstByName(groupName);

            //Si grupo no existe en un provider p/bd es por que seguramente se agrego el grupo por la aplicacion del fwk y ahun este grupo se encuentra vasio.
            //y no es posible agregar grupos vasios ya que los grupos tienen que tener al menos una propiedad para ser agregados a la tabla
            if (wGroup == null)
            {
                wGroup = new Group();
                wGroup.Keys = new Keys();
                wGroup.Name=groupName;
                AddGroup(provider, wGroup);
            }
            wGroup.Keys.Add(key);



            fwk_ConfigManager confg;
            try
            {
                using (FwkDatacontext dc = new FwkDatacontext(GetCnnString(provider)))
                {

                    confg = new fwk_ConfigManager();
                    confg.ConfigurationFileName = provider.BaseConfigFile;
                    confg.key = key.Name;
                    confg.encrypted = key.Encrypted;
                    confg.value = key.Value.Text;
                    confg.group = groupName;

                    dc.fwk_ConfigManagers.InsertOnSubmit(confg);


                    dc.SubmitChanges();
                }

            }
            catch (Exception ex)
            {
                TechnicalException te = new TechnicalException("Problemas con Fwk.Configuration al realizar operaciones con la base de datos \r\n", ex);
                ExceptionHelper.SetTechnicalException<DatabaseConfigManager>(te);
                te.ErrorId = "8200";
                throw te;

            }
        }
示例#10
0
        /// <summary>
        /// Permite eliminar por 
        /// solo parentId
        /// solo paramId
        /// por ambos
        /// no permite que ambos sean Null
        /// </summary>
        /// <param name="paramId"></param>
        /// <param name="parentId"></param>
        /// <param name="cnnStringName"></param>
        public static void Delete(int? paramId, int? parentId, string cnnStringName)
        {
            //no permite que ambos sean Null
            if (paramId.HasValue == false || parentId.HasValue == false)
                throw new Fwk.Exceptions.TechnicalException("Debe proporcinar almeno uno de los dos parametros");
            using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
            {
                var paramsList = dc.fwk_Params.Where(p => (paramId.HasValue == false || p.ParamId.Equals(paramId.Value)) &&
                       (parentId.HasValue == false || p.ParentId.Equals(parentId.Value)));
                foreach (fwk_Param p in paramsList)
                {
                    dc.fwk_Params.DeleteOnSubmit(p);
                }
                dc.SubmitChanges();

            }
        }
示例#11
0
 /// <summary>
 /// Actualiza fwk_Param
 /// </summary>
 /// <param name="paramBE"></param>
 /// <param name="userUpdateId"></param>
 /// <param name="cnnStringName"></param>
 public static void Update(ParamBE paramBE, Guid? userUpdateId, string cnnStringName)
 {
     using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
     {
         Fwk.ConfigData.fwk_Param param = dc.fwk_Params.Where(p => p.Id.Equals(paramBE.Id)).FirstOrDefault();
         if (param != null)
         {
           
             param.Enabled = true;
             param.Name = paramBE.Name;
             param.Culture = paramBE.Culture;
             param.Description = paramBE.Description;
             //param.ParamId = paramBE.ParamId;
             //param.ParentId = paramBE.ParentId;
             dc.SubmitChanges();
         }
     }
 }
示例#12
0
 /// <summary>
 /// 
 /// </summary>
 /// <param name="paramBE"></param>
 /// <param name="userId"></param>
 /// <param name="cnnStringName"></param>
 public static void Create(ParamBE paramBE, Guid? userId, string cnnStringName)
 {
     using (Fwk.ConfigData.FwkDatacontext dc = new Fwk.ConfigData.FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[cnnStringName].ConnectionString))
     {
         Fwk.ConfigData.fwk_Param param = new ConfigData.fwk_Param();
         param.Culture = paramBE.Culture;
         param.Description = paramBE.Description;
         param.Enabled = true;
         param.Name = paramBE.Name;
         param.ParamId = paramBE.ParamId;
         param.ParentId = paramBE.ParentId;
         
         dc.fwk_Params.InsertOnSubmit(param);
         dc.SubmitChanges();
         paramBE.Id = param.Id;
         
     }
    
 }
示例#13
0
文件: Audit.cs 项目: Pelsoft/fwk_10.3
        /// <summary>
        /// Almacena informacion de auditoria.- 
        /// Llama a StaticLogger y carga el log auditando los datos del Request de entrada
        /// </summary>
        /// <param name="pRequest">Request</param>
        /// <param name="wResult">Response</param>
        internal static void LogSuccessfulExecution(IServiceContract pRequest, IServiceContract wResult)
        {
            fwk_ServiceAudit audit = new fwk_ServiceAudit();

            audit.LogTime = System.DateTime.Now;
            audit.ServiceName = pRequest.ServiceName;
            audit.Send_Time = pRequest.ContextInformation.HostTime;
            if(Fwk.HelperFunctions.DateFunctions.IsSqlDateTimeOutOverflow(wResult.ContextInformation.HostTime)==false)
                audit.Resived_Time = wResult.ContextInformation.HostTime;
            else
            {
                audit.Resived_Time = wResult.ContextInformation.HostTime = DateTime.Now;
                
            }
            
            audit.Send_UserId = pRequest.ContextInformation.UserId;
            audit.Send_Machine = pRequest.ContextInformation.HostName;

            audit.Dispatcher_Instance_Name = FacadeHelper.ServiceDispatcherConfig.InstanseName;
            audit.ApplicationId = pRequest.ContextInformation.AppId;

            audit.Requets = TypeFunctions.ConvertStringToByteArray(pRequest.GetXml());
            audit.Response = TypeFunctions.ConvertStringToByteArray(wResult.GetXml());

           

            try
            {
                using (FwkDatacontext context = new FwkDatacontext(System.Configuration.ConfigurationManager.ConnectionStrings[ConfigurationsHelper.ServiceDispatcherConnection].ConnectionString))
                {
                    context.fwk_ServiceAudits.InsertOnSubmit(audit);
                    context.SubmitChanges();
                }
    

            }
            catch(Exception)
            {
                
                LogSuccessfulExecution_Old(pRequest, wResult);
            }
            

        }