MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

c# mongodb driver cara memberikan nilai ganda mongo ke c# desimal

Pilihan terbaik mungkin dengan ini:

monto = document["monto"].ToDecimal();

Alasan mengapa ini bekerja dengan sangat baik adalah karena BsonValue abstrak type mengimplementasikan metode yang terlihat seperti ini:

public virtual decimal ToDecimal()

Implementasi konkret BsonValue (mis. BsonInt32 , BsonInt64 , BsonDouble dll.) timpa anggota ini dengan metode di bawah ini yang memberi Anda persis apa yang Anda inginkan, tidak peduli apakah driver menghapus serial int, long atau double dari dokumen yang disimpan:

public override decimal ToDecimal()
{
    return (decimal)_value;
}

Atau, dalam kasus khusus Anda (dan jika semua dokumen dalam cakupan memiliki int yang disimpan di bidang "monto"), Anda cukup menulis:

monto = Convert.ToDecimal(document["monto"].AsInt32)

atau bahkan hanya

monto = (decimal)(document["monto"].AsInt32)

yang secara semantik identik.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Cara Terbaik untuk Menghosting MongoDB di DigitalOcean

  2. Sharding dengan mongo musim semi

  3. dukungan transaksi mongodb 4.0 untuk node.js

  4. Kueri agregasi Mongodb untuk mengurangi dan mengelompokkan nilai kumulatif

  5. Koneksi MongoDb ditolak