投稿

9月, 2014の投稿を表示しています

[jQuery] 複数の data をサーバー(ashx)に渡す

以下のように渡してしまうと、code1 しか渡すことができず、code2 を参照すると null 参照となってしまう。 $.ajax({ type: "POST", url: "http://exsample.com/code.ashx", data: { "code1": $("#txtCode1").val() }, data: { "code2": $("#txtCode2").val() }, dataType: "json", cache: true, success: function (result) { hoge(result); }, error: function (obj, err) { } }); 以下のように Json の変数に整形すると値を渡すことができる。 受け取り側は HttpContext の Request で取得する。 var dat = { "code1": $("#txtCode1").val(), "code2": $("#txtCode2").val() }; $.ajax({ type: "POST", url: "http://exsample.com/code.ashx", data: dat, dataType: "json", cache: true, success: function (result) { hoge(result); }, error: function (obj, err) { } });

[C#] DataTable の Row に対して LINQ とラムダによる検索をする

DataTable を使用している業務システムは多いものだが、foreach で回しているケースも少なくない。.NET Framework のバージョンが古い場合はどうしようもないが、バージョンだけ上がっている場合は LINQ や ラムダを使用して高速に検索することができる。 var dt = new DataTable(); dt.Columns.Add("Name", typeof(string)); for (var i = 0; i <= 10; i++) { var dr = dt.NewRow(); dr["Name"] = "hoge" + i.ToString(); dt.Rows.Add(dr); } var ret = 0; // Name の末尾が 0 であるレコードをカウントする(LINQ)。 ret = (from x in dt.AsEnumerable() where Convert.ToString(x["Name"]).EndsWith("0") select x).Count(); Console.WriteLine(ret.ToString()); // Name の末尾が 0 であるレコードをカウントする(ラムダ)。 ret = dt.AsEnumerable().Count(x => Convert.ToString(x["Name"]).EndsWith("0")); Console.WriteLine(ret.ToString()); // 出力 : 2

[WinMerg] 行番号表示

イメージ
デフォルト状態では行番号が表示されていないのだが、実はメニューから設定する。 [表示] - [行番号を表示 (N)]

[C#] DataRow の「アクセスできない保護レベル」

イメージ
DataRow 型を初期化する際、つい以下のように記述しがちだが、エラーが出てしまう。 'System.Data.DataRow.DataRow(System.Data.DataRowBuilder)' はアクセスできない保護レベルになっています。 以下のように記述する。 // エラー var dr1 = new DataRow(); // 初期化成功 var dr2 = new DataTable().NewRow();

[Explzh 64bit] サーバーに 7-ZIP64.DLL が見つかりません。

イメージ
Explzh (64bit) のヘルプから「アーカイバ DLL の自動アップデート」を実行し、7-Zip の DLL しようとすると失敗する。サイトには以下のサイトより 64bit 版 7-zip64.dll をダウンロードして、システムフォルダに配置しろとの記述がある。  綾川的趣味之接続集 http://homepage1.nifty.com/Ayakawa/   Windows 7 64bit 環境の場合、 C:\Windows\SysWOW64 にコピーしろと書いてあるのだが( http://www.ponsoftware.com/archiver/help/X64DLL.htm )、実際にはなぜか C:\Windows\System32 に配置しないと動作しない……。