Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //write entity with map and array field
- var schema3 =
- Schema.Lookup(new Guid("1899FD3C-7046-4B53-945A-AA1370B8C577"));
- if (schema3 == null)
- {
- schema3 = CreateComplexSchema();
- }
- var entity4 =
- new Entity(schema3);
- entity4.Set("SimpleField", "Hello, Simple entity");
- //Array field
- IList<Entity> listOfEntities =
- new List<Entity>();
- var entity5 =
- new Entity(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- entity5.Set("SomeValue", 5);
- var entity6 =
- new Entity(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- entity6.Set("SomeValue", 6);
- listOfEntities.Add(entity5);
- listOfEntities.Add(entity6);
- entity4.Set("ArrayField", listOfEntities);
- //Map fields
- IDictionary<int, Entity> mapOfEntities =
- new Dictionary<int, Entity>();
- var entity7 =
- new Entity(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- entity7.Set("SomeValue", 7);
- var entity8 =
- new Entity(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- entity8.Set("SomeValue", 8);
- mapOfEntities.Add(7, entity7);
- mapOfEntities.Add(8, entity8);
- entity4.Set("MapField", mapOfEntities);
- element.SetEntity(entity4);
- //Change value in map field
- var entity10 =
- element.GetEntity(schema3);
- var mapField =
- entity10.Get<IDictionary<int, Entity>>("MapField");
- if (mapField != null)
- {
- if (mapField.ContainsKey(8))
- {
- var entity11 = mapField[8];
- entity11.Set("SomeValue", 999);
- // write changes =
- entity10.Set("MapField", mapField);
- element.SetEntity(entity10);
- }
- }
- private Schema CreateComplexSchema()
- {
- SchemaBuilder schemaBuilder =
- new SchemaBuilder(new Guid("1899FD3C-7046-4B53-945A-AA1370B8C577"));
- schemaBuilder.SetSchemaName("ComplexSchema");
- schemaBuilder.AddSimpleField("SimpleField", typeof (string));
- var arrayField =
- schemaBuilder.AddArrayField("ArrayField", typeof (Entity));
- arrayField.SetSubSchemaGUID(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- arrayField.SetDocumentation("Demonstrate features of an array fields");
- var mapField = schemaBuilder.AddMapField("MapField", typeof (int), typeof (Entity));
- mapField.SetSubSchemaGUID(new Guid("4E5B6F62-B8B3-4A2F-9B06-DDD953D4D4BC"));
- mapField.SetDocumentation("Map field documentation");
- return schemaBuilder.Finish();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement