Пример #1
0
 private void CreateEntityElementAssociations(ParserValidationDelegate vd)
 {
     foreach (EntityElement entity in entities)
     {
         //Fields which are entities.
         foreach (PropertyElement property in entity.Fields)
         {
             if (property.Entity.Name.Length > 0)
             {
                 EntityElement e = EntityElement.FindEntityByName(entities, property.Entity.Name);
                 if (e != null)
                 {
                     property.Entity = e;
                 }
                 else
                 {
                     vd(ParserValidationArgs.NewError("Property (" + property.Name + ") specifies an entity " + property.Entity.Name + " that could not be found as an defined entity"));
                 }
             }
         }
         //Dependant entities.
         ArrayList dependents = new ArrayList();
         foreach (EntityElement dependent in entity.Dependents)
         {
             EntityElement e = EntityElement.FindEntityByName(entities, dependent.Name);
             if (e != null)
             {
                 dependents.Add(e);
             }
             else
             {
                 vd(ParserValidationArgs.NewError("Entity (" + entity.Name + ") specifies a dependent entity " + dependent.Name + " that could not be found as an defined entity"));
             }
         }
         entity.Dependents = dependents;
     }
 }
Пример #2
0
        private void ShowEntities(Int32 level, String nodeText, String parentNodeText)
        {
            if (level == 0)
            {
                listView1.Items.Clear();
                listView1.Columns.Clear();
                listView1.Columns.Add("Name", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Base Entity", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Abstract", -1, HorizontalAlignment.Left);

                foreach (EntityElement entity in entities)
                {
                    ListViewItem lvi = new ListViewItem(entity.Name);
                    lvi.SubItems.Add(entity.BaseEntity.Name);
                    lvi.SubItems.Add(entity.IsAbstract.ToString());
                    listView1.Items.Add(lvi);
                }
            }

            if (level == 1)
            {
                listView1.Items.Clear();
                EntityElement entity = EntityElement.FindEntityByName((ArrayList)entities, nodeText);
                listView1.Columns.Clear();
                listView1.Columns.Add("Name", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Type", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Concrete Type", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("SqlEntity Column", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("ViewColumn", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Convert From SqlType Format", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Access Modifier", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Description", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Readable", -1, HorizontalAlignment.Left);
                listView1.Columns.Add("Writable", -1, HorizontalAlignment.Left);
                foreach (PropertyElement field in entity.Fields)
                {
                    ListViewItem lvi = new ListViewItem(field.Name);
                    lvi.SubItems.Add(field.Type.Name);
                    lvi.SubItems.Add(field.Type.ConcreteType);
                    lvi.SubItems.Add(field.Column.Name);
                    lvi.SubItems.Add(field.Column.ViewColumn.ToString());
                    lvi.SubItems.Add(field.Type.ConvertFromSqlTypeFormat);
                    lvi.SubItems.Add(field.AccessModifier);
                    lvi.SubItems.Add(field.Description);
                    lvi.SubItems.Add(field.Readable.ToString());
                    lvi.SubItems.Add(field.Writable.ToString());
                    listView1.Items.Add(lvi);
                }
            }
            if (level == 3)
            {
                listView1.Items.Clear();
                EntityElement entity = EntityElement.FindEntityByName((ArrayList)entities, treeView1.SelectedNode.Parent.Parent.Text);
                listView1.Columns.Clear();
                listView1.Columns.Add("Finder Property Name", -1, HorizontalAlignment.Left);
                FinderElement finder = entity.FindFinderByName(nodeText);

                foreach (PropertyElement field in finder.Fields)
                {
                    listView1.Items.Add(field.Name);
                }
            }
        }