正如在評論中提到上面有大量的文檔資料涵蓋這一點。有很多方法可以連接到數據庫並檢索Linq2Sql和NHibernate等信息。我已經完成了基本的SqlConnection類。就我個人而言,首先理解這些概念非常重要。
public SqlConnectionExample()
{
// the connection string to the database - this should ALWAYS be configurable
string connectionString = "server=localhost;initial catalog=mydatabase; user=mysqluser;pass=mysqlpassword";
int userID = 1; // the ID of the logged in user
// create a connection to the database
using (SqlConnection conn = new SqlConnection(connectionString))
{
conn.Open();
// create a command to pass over the connection
using (SqlCommand cmd = new SqlCommand("select connType from login where ID = @id", conn))
{
// create a SQL parameter to add them to the command - this will limit the results to the single user
SqlParameter p = new SqlParameter("id", System.Data.SqlDbType.Int);
p.Value = userID;
cmd.Parameters.Add(p);
// as we are only selecting one column and one row we can use ExecuteScalar
string connType = cmd.ExecuteScalar().ToString();
if (connType.Equals("imap", StringComparison.CurrentCultureIgnoreCase))
{
// imap
}
else
{
// pop3
}
}
}
}
您將需要自己確定正確的ConnectionString(嘗試www.connectionstrings.com)和UserID。請注意,如果您希望返回多於一行(我在此假設ID是主鍵),則需要使用具有cmd.ExecuteReader函數的SqlDataReader。
另請注意,我使用string.Equals()而不是connType ==「Imap」,這是爲了讓我指定大小寫不敏感。
希望這會有所幫助