मोंगोडीबी और नवीनतम 10gen सी # ड्राइवर (CSharpDriver-1.3.1.4349) का उपयोग करके, मैं "जगह में" अद्यतन करने की कोशिश कर रहा हूं और परिणाम में प्रभावित दस्तावेज़ों के # वापस प्राप्त करने का प्रयास कर रहा हूं।सुरक्षित संदेश
public static long SaveListings(string state, bool isActive, DateTime updateDate)
{
var result = Collection().Update(
Query.And(
Query.EQ("State", state),
Query.And(
Query.EQ("IsActive", isActive),
Query.LT("UpdateDate", updateDate))),
Update.Set("IsActive", false), UpdateFlags.Multi);
return result != null ? result.DocumentsAffected : -1;
}
परिणाम कुछ कारणों से शून्य है।
db.Listing.update({ State: state.Abbreviation, IsActive: true, UpdateDate: { $lt: expiredDate } }, { $set: { IsActive: false } }, false, true);
var numRows = db.getLastErrorObj().n;
किसी भी विचार मैं गलत क्या कर रहा है या इस सी # चालक में एक बग है: यदि मैं console से कर रहे थे, मैं यह कर रहा से प्रभावित पंक्तियों की संख्या मिल सकती है?
धन्यवाद! मुझे पता है कि सुरक्षित मोड कैसे काम करता है हालांकि मैंने गलत तरीके से माना है कि कनेक्शन डिफ़ॉल्ट रूप से सुरक्षित मोड का उपयोग करेगा। – Justin
मुझे एक ही समस्या थी, सावधान रहें कि मौजूदा ड्राइवर को GetLastError का उपयोग करते समय प्रमाणीकरण के साथ समस्या है। रॉबर्ट (10gen पर देव) सुरक्षित मोड का उपयोग करने की सिफारिश करते हैं। इसके बजाय प्रोब तय होने तक। https://jira.mongodb.org/browse/CSHARP-390 देखें – sambomartin