private Entity MakeUnitSchema(string guid, SchemaDictionaryUsr usrSchemaFields) { SchemaBuilder sbld = CreateSchema(UnitSchemaName, RevitSettingsUnitUsr.SchemaDesc, new Guid(guid)); MakeFields(sbld, usrSchemaFields); Schema schema = sbld.Finish(); Entity entity = new Entity(schema); SaveFieldValues(entity, schema, usrSchemaFields); return(entity); }
private void ReadSubSchema(Entity subSchemaEntity, Schema schema, SchemaDictionaryUsr usrSchemaField) { foreach (KeyValuePair <SchemaUsrKey, SchemaFieldUnit> kvp in usrSchemaField) { Field field = schema.GetField(kvp.Value.Name); if (field == null || !field.IsValidObject) { continue; } kvp.Value.Value = kvp.Value.ExtractValue(subSchemaEntity, field); } }