عملیات CRUD با MongoDB در WPF

در  این مقاله، شمابا عملیات CRUD با MongoDB در WPF به همراه Grid View آشنا میشوید.ما در مقالات قبل موضوع Croud را با دیگر تکنولوژی ها بررسی کردیم که از تغییر این لینک قابل بررسی است.  با ما باشید تا پایان مقاله.

اگر بخش های قبلی مقالات ما را نخوانده‏ اید همواره می‏توانید در لینک‏ زیر مشاهده کنید.

ساخت نمونه

باید آن را در سیستم ویندوزی خود نصب و پیکربندی کنید. لطفاً اطمینان حاصل کنید که خط فرمان MongoDB به درستی کار می‏کند.

برای نصب و پیکربندی MongoDB در سیستم ویندوزی، می‏توانید از روش‏ های زیر اقدام کنید.

  • http://social.technet.microsoft.com/wiki/contents/articles/26542.mongo-db-installation-in-windows-7.aspx
  • http://prmdpandit.jbko.in/Archive/2014/9/mongo%20db%20installation%20in%20windows

یا
مراحلی که در ادامه آورده شده است را دنبال کنید.

نصب MongoDB در WPF

  • به آدرس http://www.mongodb.org/downloads رفته و فایل فشرده  ۳۲ بیتی را دانلود کنید.
  • پس از دانلود، آن را در c::/ از حالت فشرده خارج کنید.
  • نام پوشه‏ ی <MongoDB 2.6 Standard> را به <MongoDB> تغییر دهید.
  •  به C:\MongoDB\ رفته و دو پوشه ایجاد کنید.
  1. Data
  2. Log

mongodb.log)Text File)

  •  بهC:\mongodb\ بازگردید.

فایل config (پیکربندی) برای MongoDB ایجاد کنید.
<Mongo.config> را در پوشه‏ ی mongodb ایجاد کنید.

  • فایل mongo.config را بازکرده و موارد زیر را جاگذاری (paste) کنید.

dpath=C:\mongodb\Data
logpath=C:\mongodb\Log\mongodb.log
diaglog=3
فایل را ذخیره کنید.

  • به Win+R یا run رفته و cmd را تایپ کرده و با سطح دسترسی مدیر(administrator) باز کنید یا DOS را به عنوان مدیر باز کنید.
  •  دایرکتوری c:\mongodb\bin\> را تغییر دهید.
  • c:\mongodb\bin\>mongod.exe –config=“c:\mongodb\mongo.config” کلید enter را فشار دهید

MongoDB در WPF

  • یک خط فرمان جدید با سطح دسترسی مدیر باز کنید.
  • به c::\mongodb/bin/> mongo بروید.

MongoDb

  •  اکنون، Server راه ‏اندازی خواهد شد و شما در خط فرمان MongoDB هستید.

use test <
db <

پیش از شروع، لطفاً MongoDB Service خود را بررسی کنید، که آیا در حال اجراست یا خیر.

مراحل آورده شده در ادامه را دنبال کنید.

پس از نصب MongoDB در سیستم خود، بیایید برخی کوئری‏های پایگاه داده را در محیط MongoDB تست کنیم.

Use mydb <press enter> (دکمه‏ ی enter را فشار دهید)

به my db تغییر وضعیت دهید.

برای فرمان ‏های دیگر، لطفاً به تصویر آورده شده در ادامه مراجعه کنید.

Administrator

 

این  برنامه نشان می‏دهد که عملیات پایه ‏ی CRUD چگونه در MongoDB با استفاده از wpf  و NET. با کنترل WPF GridView اجرا می‏شود.
در این برنامه ، عملکردهای آورده شده‏ ی زیر را در اختیار دارید.

  1.  می‏توانید پیکربندی mongodb بصورت Local (محلی) و مبتنی بر سرور را پیکربندی کنید.
  2.  رکورد جدید را در مجموعه‏ ی پایگاه داده درج کنید.
  3.  می‏توانید رکوردی مشخص را انتخاب کنید.
  4.  پس از انتخاب رکورد مشخص، می‏توانید رکورد انتخاب شده را بروزرسانی کنید.
  5. پس از انتخاب رکورد مشخص، می‏توانید رکورد انتخاب شده را حذف کنید.
  6.  می‏توانید رکورد را، با استفاده از کنترل WPF GridView انتخاب کنید و….

پس از هرگونه تراکنشی در MongoDB توسط Application خود، بلافاصله در GridView منعکس می‏شود.
باید DLL مربوط به درایور MongoDB برای NET. را اضافه کنید.

جهت دانلود DLL درایور NET. ، می‏توانید به لینک زیر مراجعه کنید.

http://github.com/mongodb/mongo-csharp-driver/releases

پس از اجرا، تصویر Application در ادامه آورده شده است.

MongoDB در WPF

این تمام کد پایه است، که من برای عملیات CRUD در WPF C# و NET. استفاده می‏کنم، لطفاً کد را بررسی کنید.

C#

using MongoDB.Bson;   
using MongoDB.Driver;   
using MongoDB.Shared;   
using MongoDB.Bson.Serialization.Attributes;   
using MongoDB.Driver.Builders;   
   
MongoClient mongo = new MongoClient("mongodb://localhost");   
MongoServer server ;   
MongoDatabase database;   
MongoCollection<info> _infos;   
   
//This all the global variable in your project.   
   
//we will initiate this all in to the intialization method   
server = mongo.GetServer();   
server.Connect();    
database= server.GetDatabase("mydb");   
   
   
//"mydb" is the mongodb database name in my system //where database is there for curd opration.   
//for insert the record in db    
   
public void addinfo(info _info)   
        {   
                
            _info.Id = ObjectId.GenerateNewId();   
               
            _infos.Insert(_info);   
        }   
   
//For binding the gridview   
   
public void bindgrid()   
        {   
            // bind the existing info collection

<table> record in grid   
            _infos = database.GetCollection<info>("info");   
            infogrid.DataContext = _infos.FindAll();   
            infogrid.ItemsSource = _infos.FindAll();   
        }   
   
   
//update the data    
   
public void updateInfo(info _info)   
       {   
           IMongoQuery query = Query.EQ("info_id", _info.info_id);   
           IMongoUpdate update = Update   
                  
               .Set("firstname", _info.firstname)   
   
              .Set("lastname", _info.lastname)   
              .Set("age", _info.age);   
           SafeModeResult result = _infos.Update(query, update);   
               
        }   
   
//delete the record   
   
IMongoQuery query = Query.EQ("info_id", _info.info_id);   
SafeModeResult result = _infos.Remove(query); bindgrid(); 

فایل‏ های Source Code
مدلی که من برای نقش مجموعه اطلاعات <table> ایجاد کرده ‏ام.
C#

publicclass info {  
    [BsonId]  
    publicBson.BsonObjectId Id {  
        get;  
        set;  
    }  
    publicint info_id {  
        get;  
        set;  
    }  
    publicstring firstname {  
        get;  
        set;  
    }  
    publicstring lastname {  
        get;  
        set;  
    }  
    publicint age {  
        get;  
        set;  
    }  
}

 

زهره سلطانیان

نوشته‌های مرتبط

دیدگاه‌ها

*
*

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.

میشه تو نظرسنجی ما شرکت کنید؟بزن بریم