예제 #1
0
파일: ObjectBO.cs 프로젝트: ewin66/dev
        public bool UpdateBasicData(Guid cmsObjectId,
                                    Guid objectTypeCustomFieldId,
                                    object value,
                                    BasicCustomFieldTypeEnum basicCustomFieldType,
                                    CustomFieldTypeFlag customFieldTypeFlag)
        {
            Session session = null;

            try
            {
                session = XpoHelper.GetNewSession();
                ObjectCustomFieldBO objectCustomFieldBO = new ObjectCustomFieldBO();
                ObjectCustomField   objectCustomField   =
                    objectCustomFieldBO.GetObjectCustomField(session, cmsObjectId, objectTypeCustomFieldId);
                if (objectCustomField == null)
                {
                    throw new Exception("Could not found ObjectCustomField");
                }
                BasicCustomFieldTypeBOBase basicCustomFieldTypeBO = null;
                switch (basicCustomFieldType)
                {
                case BasicCustomFieldTypeEnum.STRING:
                    basicCustomFieldTypeBO = new CustomFieldDataStringBO();
                    break;

                case BasicCustomFieldTypeEnum.DATETIME:
                    basicCustomFieldTypeBO = new CustomFieldDataDateTimeBO();
                    break;

                case BasicCustomFieldTypeEnum.FLOAT:
                    basicCustomFieldTypeBO = new ObjectCustomFieldDataFloatBO();
                    break;

                case BasicCustomFieldTypeEnum.INTEGER:
                    basicCustomFieldTypeBO = new ObjectCustomFieldDataIntegerBO();
                    break;

                default:
                    break;
                }
                return(basicCustomFieldTypeBO.UpdateCustomFieldData(objectCustomField.ObjectCustomFieldId,
                                                                    value,
                                                                    customFieldTypeFlag));
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (session != null)
                {
                    session.Dispose();
                }
            }
        }
예제 #2
0
파일: ObjectBO.cs 프로젝트: ewin66/dev
        public bool UpdatePredefinitionData(Guid cmsObjectId,
                                            Guid objectTypeCustomFieldId,
                                            IEnumerable <Guid> refIds,
                                            PredefinitionCustomFieldTypeEnum predefinitionCustomFieldType,
                                            CustomFieldTypeFlag customFieldTypeFlag)
        {
            Session session = null;

            try
            {
                session = XpoHelper.GetNewSession();
                ObjectCustomFieldDataPreDefinitionBO objectCustomFieldDataPreDefinitionBO =
                    new ObjectCustomFieldDataPreDefinitionBO();

                ObjectCustomFieldBO objectCustomFieldBO = new ObjectCustomFieldBO();
                ObjectCustomField   objectCustomField   =
                    objectCustomFieldBO.GetObjectCustomField(session, cmsObjectId, objectTypeCustomFieldId);
                if (objectCustomField == null)
                {
                    throw new Exception("Could not found ObjectCustomField");
                }

                return(objectCustomFieldDataPreDefinitionBO.UpdateCustomFieldData(
                           objectCustomField.ObjectCustomFieldId,
                           refIds,
                           predefinitionCustomFieldType,
                           customFieldTypeFlag));
            }
            catch (Exception)
            {
                throw;
            }
            finally
            {
                if (session != null)
                {
                    session.Dispose();
                }
            }
        }