如何使用c#避免在Mongodb中复制文档

时间:2016-04-02 15:12:41

标签: c# mongodb

我尝试使用asp.net mvc避免MongoDB数据库中的重复文档。 我使用了手动生成的objectID,但我仍然得到重复的文档。 enter image description here

这是我的代码

//collection "Devise1"
public class Devise
{

    public ObjectId id_devise { get; set; }
    public string parité { get; set; }
    public float low { get; set; }
    public float high { get; set; }
   public string date_observation_d { get; set; }
}
 //code insertion 
 System.IO.StreamReader file = new System.IO.StreamReader(@"C:\Users\user PC\Desktop\données financiere finale\Classeur1.csv");

    string fileLines;
    try {
        while ((fileLines = file.ReadLine()) != null)
        {
            string[] elements;
            elements = fileLines.Split(new char[] { ' ' });
            for (int x = 0; x < elements.Length; x++)
            {
                devises2.parité = "EUR/USD";
                devises2.id_devise = new ObjectId();

                devises2.date_observation_d = elements[0];

                devises2.low = float.Parse(elements[3], CultureInfo.InvariantCulture.NumberFormat);
                devises2.high = float.Parse(elements[2], CultureInfo.InvariantCulture.NumberFormat);
                collection1.InsertOneAsync(devises2);
            }

        }
    }
    catch(Exception ex)
    {
        throw ex;
    }

1 个答案:

答案 0 :(得分:0)

在您的收藏中的id_devise上创建唯一索引。

您可以在C#应用程序中创建索引,但简单的方法是在MongoDB shell中运行它。请参阅MongoDB文档中的Create Unique Index