我试图从数据库中获取数据作为列表,但没有显示任何结果。我试图调试,但此行后,它不会让我step over/F10
:如何从数据库中获取数据,以列表<>存储,并显示结果以查看
DataSet ds = new DataSet();
da.Fill(ds);
我想通过下面这个例子在这里做到这一点:link 1这里link 2,但发现很难,因此我认为我应该问这里。
有人能解释为什么它不显示结果,因此我可能在这里做错了什么?我如何解决并实现它来显示数据?
下面是你的检查全部控制器代码:
public static List<DBTrack> GetListOfTracks()
{
if (DBTrackData == null)
{
string myConnectionString = "Data Source="; // I have taken off the source
string mySelectString = "SELECT TrackID, AddedDate, TrackName, ArtistName from TBL_Track";
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.Fill(ds);
OleDbConnection myConnection = new OleDbConnection(myConnectionString);
OleDbCommand myCommand = new OleDbCommand(mySelectString, myConnection);
myCommand.Connection.Open();
OleDbDataReader myReader = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
List<DBTrack> list = new List<DBTrack>();
while (myReader.Read())
{
DBTrack data = new DBTrack();
data.TrackID = (Guid)(myReader["TrackID"]);
data.AddedDate = (DateTime)myReader["AddedDate"];
data.TrackName = (string)myReader["TrackName"];
data.ArtistName = (string)myReader["ArtistName"];
list.Add(data);
};
}
return DBTrackData;
}
编辑:
SqlConnection mySQLconnection = new SqlConnection(@"Data Source=server-2\SQLExpress;Initial Catalog=End;Integrated Security=False;User ID=test1;Password=**");
SqlCommand mySelectString = new SqlCommand("SELECT TrackID, AddedDate, TrackName, ArtistName from TBL_Track");
using (SqlConnection connection = new SqlConnection("context connection=true"))
{
connection.Open();
using (SqlCommand myCommand = new SqlCommand // The best overload method System.Data.SqlClient.SqlCommand.SqlCommand has some invalid arguments
(mySelectString, mySQLconnection)) // Cannot convert from System.Data.SqlClient.SqlCommand to 'string'
{
感谢帕特里克的详细帮助:)我想你的建议也和上面一样的评论,调试器不会让我'跨过/ F10'通过此行' OleDbConnection myConnection = new OleDbConnection(myConnectionString);',这是否意味着我有'string myConnectionString'中的连接问题以连接到'DB'?再次感谢:) – user3679123
我这么认为。如果它显示给你一个例外,你可能有一些连接问题。 –
谢谢 - 我没有收到任何异常或错误消息。它只是不会从这行代码向前传递'OleDbCommand myCommand = new OleDbCommand(mySelectString,myConnection);'。 – user3679123