private static bool UpdateMyAttribute(IServerSession session) { var attrBroker = session.DataAccess.Brokers.NodeAttributeDefinition; var dacFactory = session.DataAccess.ModelFactory; IChangeSet changes = session.DataAccess.CreateChangeSet(); INodeAttributeDefinition attr = dacFactory.CreateNodeAttributeDefinition(); attr.DefaultValue = "hello"; attrBroker.UpdateNodeAttributeDefinitions(changes, attr, dacFactory.CreateSelectorByFilter(dacFactory.CreateFilterExpression("Name LIKE \"" + ATTRIBUTE_NAME + "\""))); Console.Write("Updating my NodeAttributeDefinition... "); using (var result = changes.Save()) { if (result.IsSuccess) { Console.WriteLine("success"); return(true); } else { Console.WriteLine("failed: " + result.ToString()); return(false); } } }
private static bool CreateMyAttribute(IServerSession session) { var attrBroker = session.DataAccess.Brokers.NodeAttributeDefinition; IChangeSet changes = session.DataAccess.CreateChangeSet(); INodeAttributeDefinition attr = session.DataAccess.ModelFactory.CreateNodeAttributeDefinition(); attr.Id = new Oid(); attr.Name = ATTRIBUTE_NAME; attr.DefaultValue = "hi"; attrBroker.CreateNodeAttributeDefinition(changes, attr); Console.Write("Creating my NodeAttributeDefinition... "); using (var result = changes.Save()) { if (result.IsSuccess) { // extract the actual id of the created attr def Oid newId = result.IdMap[attr.Id]; Console.WriteLine("success, my attribute def has id {0}", newId); return(true); } else { Console.WriteLine("failed: " + result.ToString()); return(false); } } }