我尝试使用asp.net mvc避免MongoDB数据库中的重复文档。 我使用了手动生成的objectID,但我仍然得到重复的文档。
这是我的代码
//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;
}
答案 0 :(得分:0)
在您的收藏中的id_devise
上创建唯一索引。
您可以在C#应用程序中创建索引,但简单的方法是在MongoDB shell中运行它。请参阅MongoDB文档中的Create Unique Index。