时间:2021-07-01 10:21:17 帮助过:22人阅读
- <span style="color: #0000ff">using</span><span style="color: #000000"> System;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> System.Collections.Generic;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> System.Text;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Bson;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Bson.Serialization.Attributes;
- </span><span style="color: #0000ff">namespace</span><span style="color: #000000"> MongoBase
- {
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">class</span><span style="color: #000000"> EntityBase
- {
- </span><span style="color: #0000ff">public</span><span style="color: #000000"> EntityBase()
- {
- _id </span>=<span style="color: #000000"> ObjectId.GenerateNewId();
- createTime </span>=<span style="color: #000000"> DateTime.Now;
- isDelete </span>= <span style="color: #0000ff">false</span><span style="color: #000000">;
- id </span>=<span style="color: #000000"> _id.ToString();
- }
- [BsonId]
- </span><span style="color: #0000ff">public</span> ObjectId _id { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">string</span> id { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> DateTime? createTime { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">bool</span>? isDelete { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- }
- }</span>
- <span style="color: #0000ff">using</span><span style="color: #000000"> System;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> System.Collections.Generic;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoBase;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Bson;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Driver;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Driver.Linq;
- </span><span style="color: #0000ff">namespace</span><span style="color: #000000"> ConsoleApp5
- {
- </span><span style="color: #0000ff">class</span><span style="color: #000000"> Program
- {
- </span><span style="color: #0000ff">static</span> <span style="color: #0000ff">void</span> Main(<span style="color: #0000ff">string</span><span style="color: #000000">[] args)
- {
- MongoHelper</span><Video> videoHelper = <span style="color: #0000ff">new</span> MongoHelper<Video><span style="color: #000000">();
- </span><span style="color: #008000">//</span><span style="color: #008000">新增</span>
- videoHelper.Collection.InsertOne(<span style="color: #0000ff">new</span><span style="color: #000000"> Video()
- {
- Title</span>=<span style="color: #800000">"</span><span style="color: #800000">ggg</span><span style="color: #800000">"</span><span style="color: #000000">
- });
- </span><span style="color: #008000">//</span><span style="color: #008000">查找集合</span>
- <span style="color: #0000ff">var</span> list = videoHelper.Collection.Find(videoHelper.Filter.Eq(e => e.Category, <span style="color: #800000">"</span><span style="color: #800000">Horror</span><span style="color: #800000">"</span><span style="color: #000000">)).ToList();
- </span><span style="color: #008000">//</span><span style="color: #008000">方式一:拼接查找条件</span>
- List<FilterDefinition<Video>> listFilter = <span style="color: #0000ff">new</span> List<FilterDefinition<Video>><span style="color: #000000">()
- {
- videoHelper.Filter.Eq(e</span>=>e.Minutes,<span style="color: #800080">118</span><span style="color: #000000">),
- videoHelper.Filter.Eq(e</span>=>e.Title,<span style="color: #800000">"</span><span style="color: #800000">The Perfect Developer</span><span style="color: #800000">"</span><span style="color: #000000">)
- };
- </span><span style="color: #008000">//</span><span style="color: #008000">根据查找多个条件筛选集合</span>
- list =<span style="color: #000000"> videoHelper.Collection.Find(videoHelper.Filter.And(listFilter)).ToList();
- </span><span style="color: #008000">//</span><span style="color: #008000">方式二:拼接查找条件</span>
- <span style="color: #0000ff">var</span> filter = videoHelper.Filter.Eq(e => e.Title, <span style="color: #800000">"</span><span style="color: #800000">cys</span><span style="color: #800000">"</span>) & videoHelper.Filter.Eq(e => e.Category, <span style="color: #800000">"</span><span style="color: #800000">cys</span><span style="color: #800000">"</span><span style="color: #000000">);
- list </span>=<span style="color: #000000"> videoHelper.Collection.Find(filter).ToList();
- </span><span style="color: #008000">//</span><span style="color: #008000">拼接更新字段</span>
- <span style="color: #0000ff">var</span> updateDefinition = <span style="color: #0000ff">new</span> List<UpdateDefinition<Video>><span style="color: #000000">()
- {
- videoHelper.Update.Set(e</span>=>e.Title, <span style="color: #800000">"</span><span style="color: #800000">cys</span><span style="color: #800000">"</span><span style="color: #000000">),
- videoHelper.Update.Set(e</span>=>e.Category, <span style="color: #800000">"</span><span style="color: #800000">cys</span><span style="color: #800000">"</span><span style="color: #000000">)
- };
- </span><span style="color: #008000">//</span><span style="color: #008000">按照条件更新</span>
- <span style="color: #000000"> videoHelper.Collection.UpdateMany(videoHelper.Filter.And(listFilter),
- videoHelper.Update.Combine(updateDefinition));
- </span><span style="color: #008000">//</span><span style="color: #008000">删除</span>
- videoHelper.Collection.DeleteOne(videoHelper.Filter.Eq(e => e.Title, <span style="color: #800000">"</span><span style="color: #800000">Lost In Frankfurt am Main</span><span style="color: #800000">"</span><span style="color: #000000">));
- }
- }
- }</span>
- <span style="color: #0000ff">using</span><span style="color: #000000"> MongoBase;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Bson;
- </span><span style="color: #0000ff">using</span><span style="color: #000000"> MongoDB.Bson.Serialization.Attributes;
- </span><span style="color: #0000ff">namespace</span><span style="color: #000000"> ConsoleApp5
- {
- </span><span style="color: #0000ff">internal</span> <span style="color: #0000ff">class</span><span style="color: #000000"> Video : EntityBase
- {
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">string</span> Title { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">string</span> Category { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">int</span> Minutes { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- </span><span style="color: #0000ff">public</span> <span style="color: #0000ff">string</span> Comments { <span style="color: #0000ff">get</span>; <span style="color: #0000ff">set</span><span style="color: #000000">; }
- }
- }</span>
C# 操作 MongoDB
标签:minutes ide nbsp root mongo ted efi public system