0

テーブルを MySQL データベースにインポートしました。データ エントリから順序付きリストを作成して、Web ページにデータを表示したいと考えています。

CMS Umbraco で Razor (および/または .NET) を使用していますが、残念ながら Gridview または WebMatrix を使用できません。公式ドキュメントのこの記事は、私がやりたいことを正確に示していますが、代替スクリプトの作成に問題があります。

これまでの私のコード:

@{
   SqlConnection con = new SqlConnection("server=localhost;database=database;user id=username;password=password");
   SqlCommand sql = new SqlCommand("SELECT * FROM entries", con);

   con.Open();

   MySqlCommand db = new MySqlCommand(sql, con);

   foreach(var row in db.Query(sql)) {
     <ul>
       <li>@row.Name - @row.Description</li>
     </ul>
   }

   if(con != null){
     con.Close();
   }
}

このコードを使用すると、「" MySql.Data.MySqlClient.MySqlCommand.MySqlCommand(string, MySql.Data.MySqlClient.MySqlConnection)' に一致する最適なオーバーロードされたメソッドには無効な引数があります" というエラーが表示されます。現在のコードから離れて、WebMatrix を使用せずにテーブル データを簡単に表示するにはどうすればよいですか?

4

1 に答える 1

0

エラーは、「MySql.Data.MySqlClient.MySqlCommand.MySqlCommand(string, MySql.Data.MySqlClient.MySqlConnection)」に無効な引数があります」と言っています

つまり、mysqlconnection パラメータの文字列を使用してメソッドを呼び出すのではなく、間違って MySqlCommand を「呼び出し」ていることを意味し、sqlcommand と sqlconnection を使用してメソッドを呼び出しています。

mysqlページに例があります

public void CreateMySqlDataReader(string mySelectQuery, MySqlConnection myConnection) 
 {
    MySqlCommand myCommand = new MySqlCommand(mySelectQuery, myConnection);
    myConnection.Open();
    MySqlDataReader myReader;
    myReader = myCommand.ExecuteReader();
    try
    {
      while(myReader.Read()) 
      {
        Console.WriteLine(myReader.GetString(0));
      }
    }
    finally
    {
      myReader.Close();
      myConnection.Close();
    }
 }
于 2012-06-12T12:48:09.357 に答える