標籤:
題記:媳婦要求發上來。這篇我要上首頁。
1,NuGet引入MongoDB。接著是命名空間
using MongoDB.Bson;using MongoDB.Driver;using MongoDB.Driver.Builders;using MongoDB.Driver.Linq;
2,全域聲明
MongoDatabase mongo = new MongoClient(ConfigurationManager.AppSettings["PSConnStrMongoDB"]).GetServer().GetDatabase("psNew");MongoCollection arts = null;
3,執行個體化
arts = mongo.GetCollection<ArticleForMongo>("artNew");
4,組織List,批插。過癮的批插
List<ArticleForMongo> artIns = ai.Select(e => new ArticleForMongo{IntArticleID = Convert.ToInt32(e.IntArticleID),... IntFree = Convert.ToInt32(e.IntFree)}).ToList();//批插arts.InsertBatch(typeof(ArticleForMongo), artIns);
5,組織ID List,批刪
foreach (ArticleList ali in ad) { sd.Append(ali.IntArticleID + ","); } DeleteArticle(sd.ToString().TrimEnd(‘,‘));
批刪
List<IMongoQuery> listQuery = new List<IMongoQuery>();string[] aidList = aid.Split(‘,‘); foreach (string id in aidList){ listQuery.Add(Query.EQ("_id", Convert.ToInt32(id))); }IMongoQuery query = Query.Or(listQuery);WriteConcernResult result = arts.Remove(query);bool bl = result != null && result.Ok;
6,改
public bool UpdateArticle(ArticleForMongo arm){IMongoQuery query;query = Query.And(Query.EQ("_id", arm.IntArticleID));BsonDocument bsonDocument = arm.ToBsonDocument<ArticleForMongo>();bsonDocument.Remove("_id");var update = new UpdateDocument { { "$set", bsonDocument } };WriteConcernResult result = arts.Update(query, update);bool bl = result != null && result.Ok;//if (bl)//{//Common.AppendTxtFile(opearFilePath, "修改成功 ID:" + arm.IntArticleID);//}if (!bl){Common.AppendTxtFile(opearFilePath, "修改失敗 ID:" + arm.IntArticleID);}return bl;}
7,查
8,索引
9,效能最佳化
....
MongoDB C# CRUD (3)