• 去重mongodb LIST


    using MongoDB;
    using DockSample.DB;
    using MongoDB.Driver;
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using WeifenLuo.WinFormsUI.Docking;
    using MongoDB.Bson;
    
    namespace DockSample
    {
        public partial class Form2 : DockContent
        {
            public Form2()
            {
                InitializeComponent();
            }
    
    
            ////////////////////// workaround of RichTextbox control's bug:
            ////////////////////// If load file before the control showed, all the text format will be lost
            ////////////////////// re-load the file after it get showed.
            ////////////////////private bool m_resetText = true;
            ////////////////////protected override void OnPaint(PaintEventArgs e)
            ////////////////////{
            ////////////////////    base.OnPaint(e);
            ////////////////////    if (m_resetText)
            ////////////////////    {
            ////////////////////        m_resetText = false;
    
            ////////////////////    }
            ////////////////////}
    
            ////////////////////////protected override string GetPersistString()
            ////////////////////////{
            ////////////////////////    // Add extra information into the persist string for this document
            ////////////////////////    // so that it is available when deserialized.
            ////////////////////////    return GetType().ToString() + ",1123," + Text;
            ////////////////////////}
    
            ////////////////////private void menuItem2_Click(object sender, System.EventArgs e)
            ////////////////////{
            ////////////////////    MessageBox.Show("This is to demostrate menu item has been successfully merged into the main form. Form Text=" + Text);
            ////////////////////}
    
            ////////////////////private void menuItemCheckTest_Click(object sender, System.EventArgs e)
            ////////////////////{
    
            ////////////////////}
    
            ////////////////////protected override void OnTextChanged(EventArgs e)
            ////////////////////{
            ////////////////////    base.OnTextChanged(e);
    
            ////////////////////}
    
        
            private void button1_Click(object sender, EventArgs e)
            {
                usera u = new usera();
                u.cid = 10;
                u.name = "测试看看";
                WriteConcernResult s = MongoDBHelper.InsertOne("user", u);
                label1.Text = s.DocumentsAffected.ToString() + "------" + s.HasLastErrorMessage.ToString();//s.HasLastErrorMessage=false既是表示操作成功!
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                IMongoQuery query = MongoDB.Driver.Builders.Query.EQ("cid", 9);
               // usera u = MongoDBHelper.GetOne<usera>("user", query);
                IEnumerable<usera> u = MongoDBHelper.GetAll<usera>("user").Distinct<usera>(new ModelComparer());
    
                //usera u = MongoDBHelper.GetOne<usera>("user", "555993c18825b905c8879edc");
                //label1.Text = u.cid.ToString() + "---" + u.name;
    
                foreach(usera ua in u)
                {
                    richTextBox1.AppendText(ua.cid.ToString() + "--" + ua.name + "
    ");
                }
            }
    
            private void button3_Click(object sender, EventArgs e)
            {
                MongoDBHelper.DeleteAll("user");
              
            }
    
        }
    
        public class usera
        {
            public ObjectId id { get; set; }
            public int cid { get; set; }
    
            public string name { get; set; }
        }
    
        public class ModelComparer : IEqualityComparer<usera>
        {
            public bool Equals(usera x, usera y)
            {
                return x.name.ToUpper() == y.name.ToUpper();
            }
            public int GetHashCode(usera obj)
            {
                return obj.name.ToUpper().GetHashCode();
            }
        }
    }
    

      

  • 相关阅读:
    Android JNI之C/C++层调用JAVA
    Android NDK编译之undefined reference to 'JNI_CreateJavaVM'
    Android 开创java世界(JNI Invocation API)
    Android JNI c/c++调用java 无需新建虚拟机
    cmake:善用find_package()提高效率暨查找JNI支持
    如何解决用CMake未定义引用`JNI_CreateJavaVM'?
    [Linker error] undefined reference to `_imp__JNI_CreateJavaVM@12'
    Android jni c/c++线程通过CallVoidMethod调用java函数出现奔溃问题
    【故障公告】部署在 k8s 上的博客后台昨天与今天在访问高峰多次出现 502团队
    上周热点回顾(3.30-4.5)团队
  • 原文地址:https://www.cnblogs.com/wangchuang/p/4513965.html
Copyright © 2020-2023  润新知