0
我目前正在製作一個WPF應用程序,現在準備添加一個mongo數據庫,但是我似乎無法找到最好的過程來做到這一點。現在我喜歡這樣做:什麼是設置域類MongoDB/C的正確方式#
MongoManagment.cs:
namespace MoneyManagment
{
class MongoManagment
{
public void Connect()
{
String connectionString = "mongodb://localhost";
MongoClient client = new MongoClient(connectionString);
MongoServer server = client.GetServer();
MongoDatabase database = server.GetDatabase("MoneyManagment"); //Connect to the database
MongoCollection<Users> _users = database.GetCollection<Users>("user"); // "user" is the collection name, "Users" is the domain class
}
}
public class Users
{
public ObjectId _id { get; set; }
public string username { get; set; }
}
}
然後我嘗試從域類訪問MainWindow.xaml.cs數據:
namespace MoneyManagment
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
foreach (Users user in _users.FindAll())
{
//do something with users data here
}
}
}
而且我在這裏得到一個錯誤,VS不能訪問_users
,這在一定程度上是合理的,但問題是,我嘗試了很多不同的方法來使其可訪問,它只是不工作,這導致我相信有一個更好的方式去做這件事。有任何想法嗎?
你究竟在哪裏實例化了_users變量?通常以_開頭的變量表示它是私有的,整個應用程序棧無法訪問?無論哪種方式,您示例中的MainWindow類都不包含對變量的任何引用。 – Claies
@AndrewCounts沒錯。我嘗試過不同的方法來引用它,而且沒有任何工作方式,那麼是否有更好的方法可以解決這個問題呢?它通常如何完成?即時通訊新的C#和mongo ... – Halter
你的聲明在C#術語中根本沒有意義。你所展示的是'_users'變量,它在'MongoManagement'類的'Connect'函數的Scope中聲明,但試圖從一個完全不同的Class中訪問它。閱讀http://msdn.microsoft.com/en-us/library/ms973875.aspx,瞭解變量和範圍(舊文章,主要是VB,但概念是有效的)。 – Claies