public List <CrawlDocument> GetFile(string fileId) { List <CrawlDocument> resultList = new List <CrawlDocument>(); var files = DatabaseMongo.GetCollection <BsonDocument>("files"); QueryDocument filter = new QueryDocument(); filter.Add("FileId", fileId); filter.Add("ClassName", "File"); var allFiles = files.Find(filter); foreach (BsonDocument file in allFiles) { CrawlDocument result = new CrawlDocument(); result.FileId = file["FileId"].ToString(); result.Hash = file["Hash"].ToString(); result.Path = file["Path"].ToString(); result.Scanned = file["Scanned"].ToBoolean(); resultList.Add(result); } return(resultList); }
private void btnQuery_Click(object sender, EventArgs e) { MongoDBHelper <CY.IoTM.Common.Business.Task> mongo = new MongoDBHelper <CY.IoTM.Common.Business.Task>(); List <CY.IoTM.Common.Business.Task> list = new List <CY.IoTM.Common.Business.Task>(); QueryDocument query = new QueryDocument(); if (this.comboBox1.Text != "全部") { if (this.comboBox1.Text == "等待") { query.Add("TaskState", 0); } else if (this.comboBox1.Text == "撤销") { query.Add("TaskState", 1); } else if (this.comboBox1.Text == "已完成") { query.Add("TaskState", 2); } else if (this.comboBox1.Text == "失败") { query.Add("TaskState", 3); } } MongoCursor <CY.IoTM.Common.Business.Task> mongoCursor = mongo.Query("Task", query); if (mongoCursor != null) { var dataList = mongoCursor.ToList(); this.bindingSource1.DataSource = dataList; } }
public BuddyItem GetBuddy(string owner, string friend) { var db = GetDatabase(); if (!db.CollectionExists("friends")) { return(null); } var collection = db.GetCollection("friends"); QueryDocument queryDoc = new QueryDocument(); queryDoc.Add("owner", owner.ToLower()); queryDoc.Add("username", friend.ToLower()); var results = collection.Find(queryDoc); results.Limit = 1; foreach (var item in results) { BuddyItem newItem = new BuddyItem(); newItem.Username = item.GetElement("username").Value.AsString; newItem.GroupName = item.GetElement("group").Value.AsString; if (item.Contains("remark")) { newItem.Remark = item.GetElement("remark").Value.AsString; } if (item.Contains("nickname")) { newItem.Nickname = item.GetElement("nickname").Value.AsString; } return(newItem); } return(null); }
public void InsertIntoFiles(string docJson) { var files = DatabaseMongo.GetCollection <BsonDocument>("files"); BsonDocument doc = BsonDocument.Parse(docJson); bool docIsAFile = doc["ClassName"].ToString() == "File"; if (docIsAFile) { string hash = doc["Hash"].ToString(); doc["Scanned"] = false; var filter = new QueryDocument(); filter.Add("Hash", hash); filter.Add("ClassName", "File"); var qryResult = files.Find(filter); // if hash exist - we should skip insertion if (qryResult.Count() == 0) { // Check hash already exists, if no - insert files.Insert(doc); } } else { doc["Scanned"] = true; files.Insert(doc); } }
public List <Task> GetTaskList(string mac) { List <Task> list = new List <Task> (); try { MongoDBHelper <Task> mongo = new MongoDBHelper <Task>(); QueryDocument query = new QueryDocument(); query.Add("MeterMac", mac); query.Add("TaskState", 0); MongoCursor <Task> mongoCursor = mongo.Query(CollectionNameDefine.TaskCollectionName, query); var dataList = mongoCursor.ToList(); foreach (Task task in dataList) { if (task.TaskType != TaskType.TaskType_校准) { task.CommandList.AddRange(CommandDA.QueryCommandList(task.TaskID)); list.Add(task); } } } catch (Exception e) { //记录日志 Console.WriteLine(e.Message); } return(list); }
static void Main(string[] args) { // TO DO: Add your code here MongoClient client = new MongoClient("mongodb://localhost:27017"); MongoServer server = client.GetServer(); MongoDatabase database = server.GetDatabase("FinanceLast"); MongoCollection <BsonDocument> collection = database.GetCollection <BsonDocument>("RandomTradeRecords"); foreach (BsonDocument aRecord in collection.FindAll()) { int traded = 0; int oriInside = 0; if (aRecord["HoldingPeriod"] == 1) { oriInside = 0; } else if (aRecord["HoldingPeriod"] > 1) { oriInside = 1; } traded = Math.Abs((int)aRecord["Inside"] - oriInside); QueryDocument query = new QueryDocument(new BsonElement("_id", aRecord["_id"])); UpdateDocument update = new UpdateDocument(); QueryDocument query2 = new QueryDocument(); query2.Add(new BsonElement("OriInside", oriInside)); query2.Add(new BsonElement("Traded", traded)); update.Add(new BsonElement("$set", query2)); collection.Update(query, update); } }
public CrawlDocument GetNewRandomUnscannedDocument() { QueryDocument filter = new QueryDocument(); filter.Add("Scanned", false); filter.Add("ClassName", "File"); // Not efficient to obtain all collection, but 'files' cooolection shouldn't bee too large // http://stackoverflow.com/questions/3975290/produce-a-random-number-in-a-range-using-c-sharp Random r = new Random((int)DateTime.Now.Ticks); long num = files.Find(filter).Count(); int x = r.Next((int)num);//Max range var allFiles = files.Find(filter).SetSkip(x).SetLimit(1); foreach (var file in allFiles) { CrawlDocument result = new CrawlDocument(); result.ClassName = "File"; result.FileId = file["FileId"].ToString(); result.Hash = file["Hash"].ToString(); result.Path = file["Path"].ToString(); result.Scanned = file["Scanned"].ToBoolean(); // Check db size is close to maximum // FileInfo Fi = new FileInfo(dbPath); // long maxsize = 2000*1024*1024; // if (Fi.Length > maxsize) // return null; return(result); } return(null); }
public void RecordAEntryTrade(DateTime date, RecognitionState dailyLineState, RecognitionState minLineState, string symbol) { string dateString = date.ToString("yyyy-MM-dd"); int dailyShape = (int)dailyLineState.Shape; int dailySlope = (int)dailyLineState.Slope; int dailySpeed = (int)dailyLineState.Speed; int minShape = (int)minLineState.Shape; int minSlope = (int)minLineState.Slope; int minSpeed = (int)minLineState.Speed; QueryDocument query = new QueryDocument(); query.Add(new BsonElement("Date", dateString)); query.Add(new BsonElement("Symbol", symbol)); this._collection.Remove(query); BsonElement[] eleArray = new BsonElement[9]; eleArray[0] = new BsonElement("Date", dateString); eleArray[1] = new BsonElement("DailyShape", dailyShape); eleArray[2] = new BsonElement("DailySlope", dailySlope); eleArray[3] = new BsonElement("DailySpeed", dailySpeed); eleArray[4] = new BsonElement("MinShape", minShape); eleArray[5] = new BsonElement("MinSlope", minSlope); eleArray[6] = new BsonElement("MinSpeed", minSpeed); eleArray[7] = new BsonElement("Symbol", symbol); eleArray[8] = new BsonElement("Reward", 0.0); BsonDocument insert = new BsonDocument(eleArray); this._collection.Insert(insert); }
private void DeletePublishItem(PublishItem pitem) { MongoDBHelper <PublishItem> mongo = new MongoDBHelper <PublishItem>(); var iDelete = new QueryDocument(); iDelete.Add("MAC", pitem.MAC); iDelete.Add("FileName", pitem.FileName); //删除老计划 mongo.Delete(MSPublishItemCollectionName, iDelete); }
public void RecordAExitTrade(DateTime date, string symbol, float reward) { string dateString = date.ToString("yyyy-MM-dd"); QueryDocument query = new QueryDocument(); query.Add(new BsonElement("Date", dateString)); query.Add(new BsonElement("Symbol", symbol)); foreach (BsonDocument result in this._collection.Find(query)) { UpdateDocument update = new UpdateDocument(result.ToDictionary()); update["Reward"] = reward; this._collection.Update(query, update); break; } }
public BuddyItem[] GetAllBuddy(string username) { var db = GetDatabase(); if (!db.CollectionExists("friends")) { return(new BuddyItem[0]); } var collection = db.GetCollection("friends"); QueryDocument queryDoc = new QueryDocument(); queryDoc.Add("owner", username.ToLower()); var results = collection.Find(queryDoc); BuddyItem[] items = new BuddyItem[results.Size()]; int i = 0; foreach (var item in results) { BuddyItem newItem = new BuddyItem(); newItem.Username = item.GetElement("username").Value.AsString; newItem.GroupName = item.GetElement("group").Value.AsString; if (item.Contains("remark")) { newItem.Remark = item.GetElement("remark").Value.AsString; } if (item.Contains("nickname")) { newItem.Nickname = item.GetElement("nickname").Value.AsString; } items[i++] = newItem; } return(items); }
public Message[] GetChatMessage(string user, bool delete) { if (string.IsNullOrEmpty(user)) { return(null); } user = user.ToLower(); var db = GetDatabase(); var collection = db.GetCollection("offline_msg"); var query = from x in collection.AsQueryable <OfflineMessageItem>() where x.To == user select x; List <Message> msgs = new List <Message>(); foreach (var item in query) { msgs.Add(new Matrix.Xmpp.Client.Message() { From = item.From + "@gjtalk.com", To = item.To + "@gjtalk.com", Body = item.Body, Delay = new Matrix.Xmpp.Delay.Delay(item.Time, item.From + "@gjtalkc.com"), Type = (Matrix.Xmpp.MessageType)Enum.Parse( typeof(Matrix.Xmpp.MessageType), item.MessageType) }); } if (delete) { QueryDocument doc = new QueryDocument(); doc.Add("To", user); collection.Remove(doc); } return(msgs.ToArray()); }
public string DeleteMeter(string mac) { MongoDBHelper <Meter> mongo = new MongoDBHelper <Meter>(); var iDelete = new QueryDocument(); iDelete.Add("Mac", mac.Trim()); mongo.Delete(CollectionNameDefine.MeterCollectionName, iDelete); //删除未被执行的指令队列 List <Task> list = GetTaskList(mac); MongoDBHelper <Task> mongo_task = new MongoDBHelper <Task>(); MongoDBHelper <Command> mongo_cmd = new MongoDBHelper <Command>(); foreach (Task t in list) { var cmdDel = new QueryDocument(); cmdDel.Add("TaskID", t.TaskID); //cmdDel.Add("CommandState", "0"); mongo_cmd.Delete(CollectionNameDefine.CommandCollectionName, cmdDel); var taskDel = new QueryDocument(); taskDel.Add("MeterMac", mac.Trim()); //taskDel.Add("TaskState", "0"); mongo_task.Delete(CollectionNameDefine.TaskCollectionName, taskDel); } return(""); }
/// <summary> /// 更新指令 /// </summary> /// <param name="command"></param> /// <returns></returns> public static string Update(Command command) { try { MongoDBHelper <Command> mongo = new MongoDBHelper <Command>(); var query = new QueryDocument(); query.Add("_id", command._id); var update = new UpdateDocument(); update.Add("CommandState", command.CommandState); update.Add("AnswerDate", command.AnswerDate); update.Add("AnswerData", command.AnswerData); update.Add("ControlCode", command.ControlCode); update.Add("DataCommand", command.DataCommand); update.Add("DataLength", command.DataLength); update.Add("TaskID", command.TaskID); update.Add("Identification", command.Identification); update.Add("Order", command.Order); mongo.Update(CollectionNameDefine.CommandCollectionName, query, update); } catch (Exception e) { return(e.Message); } return(""); }
public string NewPricingPlan(PricingPlan plan) { string result = ""; try { MongoDBHelper <PricingPlan> mongo_plan = new MongoDBHelper <PricingPlan>(); QueryDocument query = new QueryDocument(); query.Add("MeterNo", plan.MeterNo); MongoCursor <PricingPlan> mongoCursor = mongo_plan.Query(CollectionNameDefine.MeterPricingPlan, query); var dataList = mongoCursor.ToList(); if (dataList != null && dataList.Count >= 1) { var iDelete = new QueryDocument(); iDelete.Add("MeterNo", plan.MeterNo); //删除老计划 mongo_plan.Delete(CollectionNameDefine.MeterPricingPlan, iDelete); } mongo_plan.Insert(CollectionNameDefine.MeterPricingPlan, plan); } catch (Exception e) { result = e.Message; } return(result); }
public AddFriendRequest[] GetAddFriendRequests(string ownerUsername) { List <AddFriendRequest> requests = new List <AddFriendRequest>(); var db = GetDatabase(); var collection = db.GetCollection("friend_request"); var queryDoc = new QueryDocument(); queryDoc.Add("OwnerUsername", ownerUsername.ToLower()); foreach (var req in collection.Find(queryDoc)) { AddFriendRequest request = new AddFriendRequest() { Time = req.GetValue("Time").AsDateTime, OwnerUsername = req.GetValue("OwnerUsername").AsString, FriendUsername = req.GetValue("FriendUsername").AsString, GroupName = req.GetValue("GroupName").AsString, Remark = req.GetValue("Remark").AsString, Message = req.GetValue("Message").AsString }; requests.Add(request); } return(requests.ToArray()); }
public string PricingPlanFinished(PricingPlan plan) { string result = ""; try { MongoDBHelper <PricingPlan> mongo_plan = new MongoDBHelper <PricingPlan>(); QueryDocument query = new QueryDocument(); query.Add("MeterNo", plan.MeterNo); MongoCursor <PricingPlan> mongoCursor = mongo_plan.Query(CollectionNameDefine.MeterPricingPlan, query); var dataList = mongoCursor.ToList(); if (dataList != null && dataList.Count >= 1) { //删除老计划 List <string> list = new List <string>(); foreach (PricingPlan p in dataList) { list.Add(p._id.ToString()); } var iDelete = new QueryDocument(); iDelete.Add("MeterNo", plan.MeterNo); mongo_plan.Delete(CollectionNameDefine.MeterPricingPlan, iDelete); } } catch (Exception e) { result = e.Message; } return(result); }
private static void Query() { MongoCollection col = Init(); //定义获取"Name"值为"liusc"的查询条件 var query = new QueryDocument { { "Name", "liusc0" } }; //查询全部集合里的数据 var result1 = col.FindAllAs <Users>(); //查询指定查询条件的第一条数据,查询条件可缺省。 var result2 = col.FindOneAs <Users>(); //查询指定查询条件的全部数据 var result3 = col.FindAs <Users>(query); //sql:SELECT * FROM TABLE MongoCursor <Users> u = col.FindAllAs <Users>(); //SQL:SELECT * FROM table WHERE name>10 AND name <20 QueryDocument query1 = new QueryDocument(); BsonDocument b = new BsonDocument(); b.Add("$gt", 10); b.Add("$lt", 20); query1.Add("name", b); }
private void button1_Click(object sender, EventArgs e) { int i = 0; QueryDocument query = new QueryDocument(); if (textBox7.Text != "") { query.Add("CultivarName", textBox7.Text); } if (comboBox4.SelectedItem != null) { query.Add("Hardness", comboBox4.Text); } if (comboBox5.SelectedItem != null) { query.Add("Color", comboBox5.Text); } if (comboBox6.SelectedItem != null) { query.Add("Season", comboBox6.Text); } MongoClient client = new MongoClient(); MongoServer server = client.GetServer(); MongoDatabase db = server.GetDatabase("GBSDatabase"); MongoCollection <BsonDocument> collection = db.GetCollection <BsonDocument>("Cultivars"); foreach (BsonDocument cultivar in collection.Find(query)) { DataGridViewRow row = (DataGridViewRow)dataGridView2.Rows[0].Clone(); if (i == 0) { dataGridView2.Rows[0].Cells[0].Value = cultivar.GetElement("CultivarName").ToString().Substring(13); dataGridView2.Rows[0].Cells[1].Value = cultivar.GetElement("Hardness").ToString().Substring(9); dataGridView2.Rows[0].Cells[2].Value = cultivar.GetElement("Color").ToString().Substring(6); dataGridView2.Rows[0].Cells[3].Value = cultivar.GetElement("Season").ToString().Substring(7); i++; continue; } row.Cells[0].Value = cultivar.GetElement("CultivarName").ToString().Substring(13); row.Cells[1].Value = cultivar.GetElement("Hardness").ToString().Substring(9); row.Cells[2].Value = cultivar.GetElement("Color").ToString().Substring(6); row.Cells[3].Value = cultivar.GetElement("Season").ToString().Substring(7); dataGridView2.Rows.Add(row); i++; } dataGridView2.Visible = true; }
public bool IsFriend(string ownerUsername, string friendUsername) { var db = GetDatabase(); if (!db.CollectionExists("friends")) { return(false); } var collection = db.GetCollection("friends"); QueryDocument queryDoc = new QueryDocument(); queryDoc.Add("owner", ownerUsername.ToLower()); queryDoc.Add("username", friendUsername.ToLower()); long count = collection.Count(queryDoc); return(count > 0); }
private void DeletePlan(string mac) { MongoDBHelper <PricingPlan> mongo_plan = new MongoDBHelper <PricingPlan>(); var iDelete = new QueryDocument(); iDelete.Add("MeterNo", mac); //删除老计划 mongo_plan.Delete(PPlan, iDelete); }
public ActionResult CreateContact(ServiceAlertContactsInfo obj, string IsContinue) { ReturnMessage RM = new ReturnMessage(); try { obj._id = Guid.NewGuid().ToString(); if (string.IsNullOrWhiteSpace(obj.UserName) || string.IsNullOrWhiteSpace(obj.Tel)) { RM.Message = "缺少必填字段:姓名、手机号等"; return(Json(RM)); } if (!reg_tel.IsMatch(obj.Tel)) { RM.Message = "手机号格式错误"; return(Json(RM)); } if (!string.IsNullOrWhiteSpace(obj.Email) && !reg_email.IsMatch(obj.Email)) { RM.Message = "邮箱格式错误"; return(Json(RM)); } QueryDocument query = new QueryDocument(); query.Add("UserName", obj.UserName); query.Add("ServiceId", obj.ServiceId); if (appService.CheckServiceAlertContactsInfos(query) > 0) { RM.Message = "该用户已经存在报警清单中"; } else { RM.IsSuccess = appService.UpsertServiceAlertContactsInfos(obj); RM.IsContinue = IsContinue == "0" ? false : true;; } } catch (Exception ex) { LogManager.Error(ex); RM.Message = "保存失败!"; } return(Json(RM)); }
/// <summary> /// 获取小孩一个月轨迹日期列表 /// </summary> /// <param name="childId">小孩Id</param> /// <param name="beginTime">一个月的第一天</param> /// <param name="beginTime">一个月的最后一天</param> /// <returns></returns> public List <StepRankingModel> GetChildOneMonthTraceListImpl(int childId, DateTime begin, DateTime end) { MongoClient client = new MongoClient(connection); var db = client.GetDatabase(this.dbName); var collection = db.GetCollection <StepRankingModel>(this.collection); string beginTime = begin.ToString("yyyyMMdd"); string endTime = end.ToString("yyyyMMdd"); QueryDocument query = new QueryDocument(); BsonDocument timeBson = new BsonDocument(); timeBson.Add("$gt", beginTime); //>beginTime timeBson.Add("$lt", endTime); //<endTime query.Add("Date", timeBson); query.Add(new BsonElement("ChildId", childId)); SortByDocument s = new SortByDocument(); s.Add("Date", 1);//order by asc return(collection.Find(query).Sort(s).ToList()); }
private File ReadFile(string mac, string filename) { MongoDBHelper <File> mongo = new MongoDBHelper <File>(); QueryDocument query = new QueryDocument(); query.Add("MAC", mac); query.Add("FileName", filename); MongoCursor <File> mongoCursor = mongo.Query(FileCollectionName, query); var dataList = mongoCursor.ToList(); if (dataList != null && dataList.Count == 1) { return(dataList[0]); } else { return(null); } }
public Presence[] GetPresence(string from, string to, Matrix.Xmpp.PresenceType?type, bool remove) { List <Presence> presences = new List <Presence>(); var db = GetDatabase(); var collection = db.GetCollection("offline_presence"); var query = new QueryDocument(); if (from != null) { query.Add("from", from); } if (to != null) { query.Add("to", to); } if (type != null) { query.Add("type", type.ToString()); } MongoCursor <BsonDocument> cursor; if (from == null && to == null) { cursor = collection.FindAll(); } else { cursor = collection.Find(query); } foreach (var item in cursor) { Presence presence = (Presence)Presence.LoadXml(item.GetValue("value").AsString); presences.Add(presence); } if (remove) { collection.Remove(query); } return(presences.ToArray()); }
public bool Update(string collectionName, IDictionary <string, object> condition, IDictionary <string, object> forUpdate) { var collection = GetCollection(collectionName); if (collection == null) { throw new InvalidOperationException(string.Format("fail to get collection [{0}]", collectionName)); } if (condition == null || forUpdate == null) { return(false); } if (!condition.Any() || !forUpdate.Any()) { return(false); } var query = new QueryDocument(); query.Add(condition, condition.Keys); var update = new UpdateDocument(); var setDictionary = new Dictionary <string, object>(); foreach (var updatePair in forUpdate) { var updateDictionary = updatePair.Value as IDictionary <string, object>; if (updateDictionary != null) { var pushDoc = new BsonDocument(updateDictionary); update.Add("$push", new BsonDocument().Add(updatePair.Key, pushDoc)); } else { setDictionary.Add(updatePair.Key, updatePair.Value); } } if (setDictionary.Any()) { var setDoc = new BsonDocument(setDictionary); update.Add("$set", setDoc); } collection.Update(query, update); return(true); }
private List <PublishItem> ReadPublish(string mac) { MongoDBHelper <PublishItem> mongo = new MongoDBHelper <PublishItem>(); QueryDocument query = new QueryDocument(); query.Add("MAC", mac); MongoCursor <PublishItem> mongoCursor = mongo.Query(MSPublishItemCollectionName, query); var dataList = mongoCursor.ToList(); return(dataList); }
public void DeletePlan(PricingPlan pp) { try { MongoDBHelper <PricingPlan> mongo_plan = new MongoDBHelper <PricingPlan>(); var iDelete = new QueryDocument(); iDelete.Add("TaskID", pp.TaskID); //删除老计划 mongo_plan.Delete(CollectionNameDefine.MeterPricingPlan, iDelete); } catch { } }
private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e) { string taskID = this.dataGridView1.Rows[e.RowIndex].Cells[0].Value.ToString(); MongoDBHelper <CY.IoTM.Common.Business.Command> mongo = new MongoDBHelper <CY.IoTM.Common.Business.Command>(); QueryDocument query = new QueryDocument(); query.Add("TaskID", taskID); var list = mongo.Query("Command", query); this.bindingSource2.DataSource = list; }
void IPropertyPredicateOperator.PutRegexMatchPredicate(QueryDocument doc, string expression, string options) { var name = this.FieldName; if (doc.Contains(name)) { throw new InvalidOperationException( String.Format( "this document should not contain {0} field.", name)); } doc.Add(name, new BsonRegularExpression(expression, options)); }