2017-05-10 6 views
1

MongoDB 데이터베이스에 C#으로 문서를 추가하려고합니다. 나는에 DBRef과 해당 문서를 추가 할이 같이 :. 이제 MongoCompass ScreenMongoDBRef와 함께 BsonDocument를 추가하는 방법

, 나는이 같은 문서를 추가 :

 var client = new MongoClient("mongodb://10.194.157.199:27017"); 
     var database = client.GetDatabase("DB"); 
     var produit = database.GetCollection<BsonDocument>("Produit"); 
     DBAccess data = new DBAccess(); 
     data.Connect(); 
     DataTable Produit = data.GetProduit(); 

     foreach (DataRow row in Produit.Rows) 
     { 
      var document = new BsonDocument 
       { 
        { "Name", Convert.ToString(row.ItemArray[0]) }, 
        { "Constructor", Convert.ToString(row.ItemArray[1]) }, 
        { "Familly", Convert.ToString(row.ItemArray[2]) }, 
       }; 
      produit.InsertOne(document); 
     } 

이의 목표를 설명하기 위해, 그것은 BI 소프트웨어와 정보를 연결입니다 및 MongoDB.

뭔가 명확하지 않은 경우 나에게 묻습니다. 최선의 영어로 답변하려고 노력합니다

감사합니다.

답변

1

OK 얘들 아, 내 코드가 바뀌 었어. 내 differents 컬렉션을 나타내는 클래스를 만들었습니다.

public class MyClass 
    { 
     public MongoDBRef productID { get; set; } 
     public string className{ get; set; } 
     public int classNum { get; set; } 
    } 

와 나는 같이 사용 :

static void Main(string[] args) 

{ 
    var client = new MongoClient("mongodb://10.X.X.X:27017"); 
    var database = client.GetDatabase("MyDataBase"); 
    var myCollection = database.GetCollection<BsonDocument>("MyCollectionName"); 

    var document = new MyClass 
    { 
     ProductID = new MongoDBRef("Product", new ObjectId("k9ff635f18fg12c56hjf3fae")), 
     className = "name", 
     classNum = 21 
    }; 
    myCollection.InsertOne(document.ToBsonDocument()); 
}