我想知道創建/關閉MongoDb連接的最有效方法。MongoDb創建高效連接
我有一組RESTful服務(使用C#創建的),他們中的一些獲得的數據形成的MongoDB和一些POST數據。
public static MongoDatabase GetDatabase()
{
MongoServerSettings settings = new MongoServerSettings();
settings.Server = new MongoServerAddress("localhost", 27017);
MongoServer server = new MongoServer(settings);
var database = server.GetDatabase("RapidDataStream");
return database;
}
我用上面的連接形成我的每一個服務,爲例如一個列出所有傳感器的服務。
public List<Sensor> getPublicSensors()
{
List<Sensor> sensors = new List<Sensor>();
MongoDatabase mySensor = GetDatabase();
var query = Query.And(Query.EQ("User", BsonValue.Create("Public")));
var mySensorRecords = mySensor.GetCollection("sensor_meta_data").Find(query);
DataSet ds = new DataSet();
foreach (var rec in mySensorRecords)
{
Sensor sensor = new Sensor();
sensor.sensorId = rec["EnvId"].ToString();
for (int i = 2; i < rec.ElementCount; i++)
{
SensorObject so = new SensorObject();
so.fieldName = rec.GetElement(i).Name.ToString();
so.value = rec.GetElement(i).Value.ToString();
sensor.sensorObject.Add(so);
}
sensors.Add(sensor);
}
return sensors;
}
我的問題是,這是否是一種有效的設計,否則我該如何改進?
很多謝謝。
其中之一,我沒有看到任何處置。我不知道MongoDB,但是安全嗎? – usr 2013-02-15 15:52:31
如果答案有幫助,並且您認爲它有道理,請考慮將其標記爲答案;) – baldric 2013-02-15 17:29:39