예제 #1
0
        public static void ChangeParentEntityNodeType(Guid entityId, Guid sourceId, Guid destinationId)
        {
            Guid organizationId = UserContext.Current.OrganizationId;

            EntityNodeType source = EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes[sourceId.ToString("N")];
            EntityNodeType dest   = EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes[destinationId.ToString("N")];

            int indexDest = EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes.IndexOf(dest);

            EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes.Remove(source);
            EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes.Insert(indexDest, source);

            using (EntityNodeTypeTableAdapter adapter = new EntityNodeTypeTableAdapter(OrganizationProvider.GetConnectionString(organizationId)))
            {
                int order = 1;
                foreach (EntityNodeType ent in EntityFieldProvider.Entities[entityId.ToString("N")].CustomNodeTypes)
                {
                    ClientDataSet.EntityNodeTypeRow row = GetEntityNodeType(ent.Id, organizationId);
                    row.OrderNumber = order;

                    adapter.Update(row);

                    order++;
                }
            }
        }
예제 #2
0
        public static void DeleteEntityNodeType(Guid entityNodeTypeId)
        {
            Guid organizationId = UserContext.Current.OrganizationId;

            ClientDataSet.EntityNodeTypeRow row = GetEntityNodeType(entityNodeTypeId, organizationId);
            if (row != null)
            {
                row.Deleted = true;

                using (EntityNodeTypeTableAdapter adapter = new EntityNodeTypeTableAdapter(OrganizationProvider.GetConnectionString(organizationId)))
                {
                    adapter.Update(row);
                }
            }
        }
예제 #3
0
        public static void UpdateEntityNodeType(Guid organizationId, Guid entityNodeTypeId, string name, int orderNumber)
        {
            using (EntityNodeTypeTableAdapter adapter = new EntityNodeTypeTableAdapter(OrganizationProvider.GetConnectionString(organizationId)))
            {
                ClientDataSet.EntityNodeTypeDataTable table = adapter.GetEntityNodeType(entityNodeTypeId);
                if (table.Count > 0)
                {
                    ClientDataSet.EntityNodeTypeRow row = table[0];
                    row.Name        = name;
                    row.OrderNumber = orderNumber;

                    adapter.Update(row);
                }
            }
        }