Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using OrientDB.Net.ConnectionProtocols.Binary;
- using OrientDB.Net.Core;
- using OrientDB.Net.Core.Abstractions;
- using OrientDB.Net.Core.Models;
- using OrientDB.Net.Serializers.RecordCSVSerializer;
- using Orient.Client;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace ConsoleApiOri
- {
- public class Person : OrientDBEntity
- {
- public int Age { get; set; }
- public string Name { get; set; }
- public string FirstName { get; set; }
- public string LastName { get; set; }
- public IList<string> FavoriteColors { get; set; }
- public override void Hydrate(IDictionary<string, object> data)
- {
- Age = (int)data?["Age"];
- FirstName = data?["FirstName"]?.ToString();
- LastName = data?["LastName"]?.ToString();
- FavoriteColors = data.ContainsKey("FavoriteColors") ? (data?["FavoriteColors"] as IList<object>).Select(n => n.ToString()).ToList() : new List<string>();
- }
- IEnumerable<Person> persons = new List<Person>();
- IOrientServerConnection server = new OrientDBConfiguration()
- .ConnectWith<byte[]>()
- .Connect(new BinaryProtocol("127.0.0.1", "root", "root"))
- .SerializeWith.Serializer(new OrientDBRecordCSVSerializer())
- .LogWith.Logger(null) // OBS ConsoleOrientDBLogger deu errado
- .CreateFactory()
- .CreateConnection();
- IOrientDatabaseConnection database;
- if (server.DatabaseExist("ConnectionTest", StorageType.PLocal))
- database = server.DatabaseConnect("ConnectionTest", DatabaseType.Document);
- else
- database = server.CreateDatabase("ConnectionTest", DatabaseType.Document, StorageType.PLocal);
- database.ExecuteCommand("CREATE CLASS Person");
- var transaction = database.CreateTransaction();
- var person1 = new Person { Age = 33, FirstName = "Jane", LastName = "Doe", FavoriteColors = new[] { "black", "blue" } };
- transaction.AddEntity(person1);
- transaction.AddEntity(new Person { Age = 5, FirstName = "John", LastName = "Doe", FavoriteColors = new[] { "red", "blue" }});
- transaction.Commit();
- transaction = database.CreateTransaction();
- transaction.Remove(person1);
- transaction.Commit();
- persons = database.ExecuteQuery<Person>("SELECT * FROM Person");
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement