DocumentDB - Veri Türleri

JSON veya JavaScript Object Notation, insan tarafından okunabilir veri alışverişi için tasarlanmış hafif bir metin tabanlı açık standarttır ve ayrıca makinelerin ayrıştırması ve üretmesi kolaydır. JSON, DocumentDB'nin kalbindedir. JSON'u kablo üzerinden iletiyoruz, JSON'u JSON olarak saklıyoruz ve JSON ağacını indeksleyerek tam JSON belgesi üzerinde sorgulara izin veriyoruz.

JSON biçimi aşağıdaki veri türlerini destekler -

S.No. Tip ve Açıklama
1

Number

JavaScript'te çift duyarlıklı kayan nokta biçimi

2

String

Ters eğik çizgiden kaçan çift tırnaklı Unicode

3

Boolean

Doğru ya da yanlış

4

Array

Sıralı bir değerler dizisi

5

Value

Bir dize, sayı, doğru veya yanlış, boş vb. Olabilir.

6

Object

Sıralanmamış bir anahtar koleksiyonu: değer çiftleri

7

Whitespace

Herhangi bir token çifti arasında kullanılabilir

8

Null

Boş

Basit bir örnek DateTime türüne bakalım. Müşteri sınıfına doğum tarihi ekleyin.

public class Customer {
   [JsonProperty(PropertyName = "id")] 
   public string Id { get; set; }
	
   // Must be nullable, unless generating unique values for new customers on client  
   [JsonProperty(PropertyName = "name")] 
   public string Name { get; set; }  
	
   [JsonProperty(PropertyName = "address")] 
   public Address Address { get; set; }  
	
   [JsonProperty(PropertyName = "birthDate")] 
   public DateTime BirthDate { get; set; } 
}

Aşağıdaki kodda gösterildiği gibi DateTime kullanarak depolayabilir, alabilir ve sorgulayabiliriz.

private async static Task CreateDocuments(DocumentClient client) {
   Console.WriteLine(); 
   Console.WriteLine("**** Create Documents ****"); 
   Console.WriteLine();
	
   var document3Definition = new Customer { 
      Id = "1001", 
      Name = "Luke Andrew", 
		
      Address = new Address { 
         AddressType = "Main Office", 
         AddressLine1 = "123 Main Street", 
         Location = new Location {
            City = "Brooklyn",
            StateProvinceName = "New York" 
         }, 
         PostalCode = "11229",
         CountryRegionName = "United States" 
      },
		
      BirthDate = DateTime.Parse(DateTime.Today.ToString()), 
   };
	
   Document document3 = await CreateDocument(client, document3Definition); 
   Console.WriteLine("Created document {0} from typed object", document3.Id); 
   Console.WriteLine(); 
}

Yukarıdaki kod derlenip yürütüldüğünde ve belge oluşturulduğunda, şimdi doğum tarihinin eklendiğini göreceksiniz.

**** Create Documents ****  
Created new document: 1001 
{ 
   "id": "1001", 
   "name": "Luke Andrew", 
   "address": { 
      "addressType": "Main Office", 
      "addressLine1": "123 Main Street", 
      "location": { 
         "city": "Brooklyn", 
         "stateProvinceName": "New York" 
      }, 
      "postalCode": "11229", 
      "countryRegionName": "United States" 
   }, 
   "birthDate": "2015-12-14T00:00:00", 
   "_rid": "Ic8LAMEUVgAKAAAAAAAAAA==", 
   "_ts": 1450113676, 
   "_self": "dbs/Ic8LAA==/colls/Ic8LAMEUVgA=/docs/Ic8LAMEUVgAKAAAAAAAAAA==/", 
   "_etag": "\"00002d00-0000-0000-0000-566efa8c0000\"", 
   "_attachments": "attachments/" 
} 
Created document 1001 from typed object