有了之前对MongoDB的了解,接下来我们开始在ASP.NET MVC3中使用它了。我找了两个,一个是从官方的Driver下载编译之后应该有两个dll文件,分别是MongoDB.Bson.dll和MongoDB.Driver.dll。具体怎么用可以去搜索一下。
另一个是https://github.com/samus/mongodb-csharp/downloads,本示例使用后者,编译这个项目就能得到文件名:MongoDB.dll 具体用法可以参考下载Solution中的Sample。
具体操作请各位直接看代码吧,最后也附有源码下载。
下面分别是在MVC3中对【频道】的增、删、改、查操作
首先定义 Channel 实体
public partial class Channel
{
public Guid ChannelId {get ;set ; }
[Required(ErrorMessage = "请输入频道名称!")]
public string ChannelName { get ;set ; }
[Required(ErrorMessage = "请输入频道FMS路径!")]
public string FMSPath{ get ;set ; }
public int VideoType { get ;set ;}public int ChannelStatus {get ;set ; }
[Required(ErrorMessage = "请输入流名称!")]
public string StreamName { get ;set ;}}
频道列表
public static List<Channel> GetChannel()
{
using (Mongo mg = newMongo(DBcon._connectionString))
{
mg.Connect();
var db = mg.GetDatabase(DBcon._channel);
var list = db.GetCollection<Channel>();
var query = (from c in list.Linq() select c).ToList<Channel>();
return query;
}
}
新增频道
public static void AddChannel(Channel model)
{
using (Mongo mg = new Mongo(DBcon._connectionString))
{
mg.Connect();
var db = mg.GetDatabase(DBcon._channel);
var list = db.GetCollection<Channel>();
list.Insert(model);
}
}
更新频道
public static void UpdateChannel(Channel model)
{
using (Mongo mg = new Mongo(DBcon._connectionString))
{
mg.Connect();
var db = mg.GetDatabase(DBcon._channel);
var list = db.GetCollection<Channel>();
list.Update(model, c => c.ChannelId == model.ChannelId);
}}
删除频道
public static void DeleteChannel(Guid cid)
{
using (Mongo mg = new Mongo(DBcon._connectionString))
{
mg.Connect();
var db = mg.GetDatabase(DBcon._channel);
var list = db.GetCollection<Channel>();
list.Remove(c => c.ChannelId == cid);
}}