昨日の続き:O/Rマッピングだったのか、これ
技術者とは思えんなw>自分
まずは、メモ:
- http://msdn2.microsoft.com/ja-jp/library/bb399375.aspx
『方法:データベースに接続する (LINQ to SQL)』 - http://msdn2.microsoft.com/ja-jp/library/bb384428.aspx
『チュートリアル:LINQ to SQL クラスの作成 (O/R デザイナ)』 - http://msdn2.microsoft.com/ja-jp/library/bb399400.aspx
『LINQ to SQL でのコード生成』
DBの接続は、まあ今までどおりにSystem.Data.SqlClient.SqlConnectionを使う*1。昨日書いた方法でApp.configから接続文字列を取得する。
LINQ to SQLでデータを取得したいなら、DBへの接続はDataContextクラスを使い、テーブルはクラスにマッピングするんだそうな。まあ、やることは拡張子dbmlのXMLファイル(LINQ to SQLファイル)を作成し、VS2008のデザイナ上でテーブルをDrag & Dropしてあげるだけ。
DataContext db = new DataContext(conn); Table<M_USER> Users = db.GetTable<M_USER>(); IQueryable<M_USER> userQuery = from M_USER in Users where M_USER.USER_ID == textID.Text select M_USER;
TextBoxに入力されたユーザID文字列で、M_USERというテーブルからユーザ情報を取得してみたわけだ。結果は成功。
ていうか、本当にやりたかったのはパスワード認証なので、パスワードもwhere文に入れるべきなのだが・・・・・・"and PPASWORD*2 == textPassword.Text"とか書き加えたらあっさりエラーになったorz
どうも、そういう書き方ではないようです。とりあえず、勉強してきます(汗
(2/11追記)
きちんとリファレンスを読んでないワタクシが悪うございましたorz
AND → && OR → ||
って書けばよいのでした(^^;;
*1:もちろんこれは相手がSQL Serverだからだ
*2:パスワードを格納するカラムの名前:Plain Passwordってことで