0

次のコードを使用して SQL サーバー データベースにクエリを実行すると、予期しない結果が返されます。一部の文字が「?」に変換されます 文字。クエリに使用しているコードは次のとおりです。

var theConnectionString = @"Data Source=my-sql-server;Initial Catalog=My_Database;Integrated Security=True";
var theQuery = @"select '❤' as panda";

var dataSet = new DataSet();
using (SqlConnection connection = new    SqlConnection(theConnectionString))
{
    connection.Open();
    var command = new SqlCommand(theQuery, connection);
    foreach (var param in parameters.Keys)
    {
        command.Parameters.AddWithValue(param, parameters[param]);
    }
    SqlDataAdapter adapter = new SqlDataAdapter(command);
    adapter.Fill(dataSet);
}
return dataSet;

これにより、値が '?' の 1 行 1 列のデータセットが生成されます。(文字コード)、10084 の代わりに。

インタラクティブなデバッグは、値が正しくエンコードされていることを示していtheQueryます。

4

0 に答える 0