編集:問題を解決しましたが、何か追加してください。おかげMySqlの結果を返す際の問題
注:私はそれはワードプレスで作成されたDBを作成していないが、私は(明確にするため)、「ワードプレス」と呼ばれるMySQLデータベースを持っている私のサイト
とGoDaddyの上にホストされています。私は自分のブログから最新の投稿を取得して、それを私のURLのリンク先ページに表示したいと考えています。 私の考えはこれです:MySql DBに接続し、最新の投稿を取得するためにクエリを実行し、投稿を表示します。
私は接続を処理し、要求を処理するためのクラスを構築しました:
public class DAL
{
private string connectionString = "DRIVER={MySQL ODBC 3.51 Driver}; SERVER=[server here]; PORT=[port]; DATABASE=wordpress;
USER=[user name here]; PASSWORD=[password here];";
private OdbcConnection blogConnection;
public DAL()
{
blogConnection = new OdbcConnection(connectionString);
}
public String[] GetRecentPost()
{
string queryString = "SELECT * FROM RecentPost";
String[] recentPost = new String[3];
//ODBC
blogConnection.Open();
OdbcCommand MySqlDB = new OdbcCommand(queryString, blogConnection);
OdbcDataReader reader = MySqlDB.ExecuteReader();
while (reader.NextResult())
{
recentPost[0] = reader.GetString(0);
recentPost[1] = reader.GetString(1);
}
recentPost[2] = reader.HasRows.ToString();
blogConnection.Close();
return recentPost;
}
}
RecentPost
上記queryString
では、クエリが少し長かったので、私は、クエリ文字列簡素化するために作成した図です。 私はすでにビューが動作していることを知っています。私は、GoDaddy Hosting Center内からphpMyAdminを開いて上記のクエリを実行したところ、正しい結果が得られたので、クエリ/ビューが間違っているとは思われませんでした。
:
protected void Page_Load(object sender, EventArgs e)
{
DAL dataAccess = new DAL();
String[] recentPost = dataAccess.GetRecentPost();
Title.Text = recentPost[0];
Post.Text = recentPost[1];
Extra.Text = recentPost[2];
}
だから私のページがTitle
とPost
テキストが空であるとExtra.Text
は(DAL
からどれがreader.HasRows
からの値である)False
でロードします。 私の推測では、その接続は正常であり、クエリを実行していますが、おそらく間違ったデータベースにありますか?知りません。
また、デバッグしようとしましたが、データベースに接続しようとするとエラーが発生しました。
私の質問はです:接続文字列に問題はありますか?
接続が確立されず、クエリが実行され、例外はスローされませんが、結果は返されません。
自分自身のワードプレスのブログからデータを取得しようとした経験がある人はいますか?
助けてくれてありがとう - これは私を夢中にさせてくれました。