Couchbase Lite 2.0 é um poderoso NoSQL armazenamento de dados incorporado para iOS, Android e .Net Plataformas móveis. O Couchbase Lite oferece funcionalidades como banco de dados e documentos CRUD operações, traz poderosas API de consulta com semântica semelhante à do SQL e pesquisa de texto completo (FTS) capacidades.
Extensibilidade do Couchbase Lite
O Couchbase.Lite e Couchbase.Lite.Enterprise Nuget Os pacotes oferecem uma ampla gama de recursos para criar, configurar e manipular facilmente os dados dentro do Couchbase Lite bancos de dados nas plataformas que suportam o SDK do Couchbase Lite .NET. Embora esses pacotes já contenham uma grande quantidade de funcionalidades prontas para uso, um grande benefício do uso de pacotes Nuget é o potencial de extensibilidade. A capacidade de estender a funcionalidade existente oferece a nós, como comunidade de desenvolvimento, um caminho para criar e manter projetos que complementam os recursos existentes do Couchbase Lite.
Um exemplo de oportunidade para estender o Couchbase Lite é adicionar a capacidade de dinamicamente converter objetos de e para MutableDocument
objetos. Atualmente, como visto abaixo, cada nome e valor de propriedade do objeto modelo deve ser adicionado manualmente ao MutableDocument
por meio de vários métodos específicos de tipo.
1 2 3 |
var mutableDocument (documento mutável) = novo MutableDocument(); mutableDocument (documento mutável).SetString("Nome", userProfile.Nome); mutableDocument (documento mutável).SetString("E-mail", userProfile.E-mail); |
Posteriormente, para converter um MutableDocument
de volta ao objeto original, é necessário fazer o seguinte.
1 2 3 4 5 |
var userProfile = novo Perfil do usuário { Nome = mutableDocument (documento mutável).GetString("Nome"), E-mail = mutableDocument (documento mutável).GetString("E-mail") }; |
Apresentando o Couchbase.Lite.Mapping
Como você pode ver, o código para converter um objeto em um objeto MutableDocument
e vice-versa é simples, mas como cada objeto deve ser mapeado, os desenvolvedores podem acabar escrevendo muitas linhas de código semelhantes. Portanto, é com muita empolgação que o Laboratórios Couchbase está lançando um novo Pacote Nuget para ajudar a diminuir a quantidade de código escrito para mapear objetos de modelo de e para MutableDocument
objetos.
1 2 3 4 5 6 7 8 9 10 11 |
var userProfile = novo Perfil do usuário { Nome = "Robert Hedgpeth", E-mail = "robert.hedgpeth@couchbase.com" }; // Conversão de um objeto em um MutableDocument var mutableDocument (documento mutável) = userProfile.ToMutableDocument(); // Conversão de um MutableDocument em um objeto var newUserProfile = mutableDocument (documento mutável).ToObject<Perfil do usuário>(); |
O Couchbase.Lite.Mapping pode ser encontrado em Nuget.orge é um projeto totalmente de código aberto mantido em Couchbase Labs no Github. É importante observar que o Couchbase.Lite.Mapping
não é oficialmente suportada pela biblioteca Couchbase, Inc.mas é, em vez disso, um esforço da comunidade. Experimente e diga-nos o que achou!
Além disso, como esse é um esforço contínuo, sinta-se à vontade para contribuir enviando comentários, problemas e/ou solicitações.
Ótimas informações. Pelo menos para mim, parecia haver uma dependência do Newtonsoft.Json.