MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मॉडलिंग मोंगोडब .net कोर में संदर्भित संबंधों को संग्रहीत करता है

नीचे दिए गए कोड पर एक नजर है। यह मेरी लाइब्रेरी का उपयोग करता है MongoDB.Entities जिसमें संस्थाओं के बीच एक-से-एक, एक-से-अनेक और अनेक-से-अनेक संबंधों के लिए अंतर्निहित समर्थन है।

using MongoDB.Entities;
using System.Linq;

namespace StackOverflow
{
    public class Program
    {
        public class Account : Entity
        {
            public string Name { get; set; }
            public Many<User> Users { get; set; }

            public Account() => this.InitOneToMany(() => Users);
        }

        public class User : Entity
        {
            public string FirstName { get; set; }
            public string LastName { get; set; }
            public One<Account> Account { get; set; }

            [Ignore]
            public string AccountName { get; set; }
        }

        private static void Main(string[] args)
        {
            new DB("test");

            var account = new Account { Name = "parent account" };
            account.Save();

            var user = new User
            {
                FirstName = "dave",
                LastName = "mathews",
                Account = account.ToReference()
            };
            user.Save();

            account.Users.Add(user);

            //find parent by ID
            var parent = DB.Find<Account>().One(account.ID);

            //get first user of parent
            var dave = parent.Users.ChildrenQueryable()
                                   .FirstOrDefault();

            //get dave's account
            var davesAccount = dave.Account.ToEntity();

            //get dave with account name filled in by a single mongo query
            var daveExtra = (from u in DB.Queryable<User>().Where(u => u.ID == dave.ID)
                             join a in DB.Queryable<Account>() on u.Account.ID equals a.ID
                             select new User
                             {
                                 ID = u.ID,
                                 FirstName = u.FirstName,
                                 LastName = u.LastName,
                                 AccountName = a.Name
                             }).SingleOrDefault();
        }
    }
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. रूबी/रेल:मोंगो (मणि) के साथ मोंगोइड; एक बीएसओएन संघर्ष? विभिन्न संस्करणों को कैसे संभालें?

  2. MongoDb Robomongo का उपयोग करके दिनांक समय के बीच नेस्टेड सरणी खोज रहा है

  3. डिलीट कैस्केड पर MongoDB DBRef

  4. $प्रोजेक्ट MongoDB के अंदर स्प्रिंग डेटा का उपयोग करके $फ़िल्टर करें

  5. मोंगोडीबी अपने दस्तावेज़ों को एक संग्रह में कैसे ऑर्डर करता है?