データベースを使用して、部署の名前を一意の郵送コードに関連付けています。つまり、会計には郵送コード 1337 があります。ShortName と ID は、クエリ対象のデータベースのフィールドです。
スキーマは
ID int
ShortName nvarchar(255)
これは、C# を使用して Web ページのバックエンドで行われます。同じコードの別の場所でオブジェクトを使用しSqlDataReader
ましたが、これによるエラーは発生しませんでした。どこかに構文エラーがあると思います。または、文字列を int または何かばかげたものに貼り付けようとしていますが、表示されません。
ページのSqlConnection
読み込み時にクエリに使用され、指定された行がコメントアウトされているときに機能するため、正しく設定されています。
SqlDataReader SQl_Reader;
string cmdString = "SELECT ShortName FROM departments WHERE (ID = " +
department_Text.SelectedValue.ToString() + ")"; //a selected value in department_text would be the mailing code such as 1337, or 1304.
SqlCommand SQl_Command2 = new SqlCommand(cmdString, SQl_Connection);
SQl_Reader = SQl_Command.ExecuteReader();
string deptName = SQl_Reader["ShortName"].ToString();//This should assign the deptName = the value in SQl_Reader but it causes the page not to load. Not sure what is wrong with it
SQl_Reader.Close();
SQl_Connection.Close();
このクエリのためだけに独自の接続、コマンド、およびリーダーを使用しても、この複数の異なる方法を試しました。コードの別の関数で同じ2つのフィールドを使用しSqlDataReader
て同様の目的で使用しましたが、完全に機能します。どんな洞察も非常に高く評価されます。