NAL-6295技術系の掲示板(まぁ、@ITなんだけど)を見ているとたまに、うざい投稿や規約違反の投稿がある。掲示板自体は、スレッドに対して回答しなければ、スレッドの海に沈んでいく仕様となっている。そのまま放置するか、サポート用のスレッドに規約違反の投稿があった旨を報告するくらいだ。考えれば、うざい投稿に「うざい」と投稿してスレッドを上げることで、他の閲覧者に該当のスレッドを晒すことで「うざい」気持ちが伝播していくと分かると思うのだが、その手の投稿も結構多い。うざい投稿に「うざい」と投稿する。その投稿自体もまたうざい。そこで、なんで、いちいちそんな投稿をするのか適当に想像してみた。1.直情的で、他の閲覧者のことまで考えが及ばない。2.「うざい」スレッドがここにありますよ。他の閲覧者に広告することで、同じ気持ちを共有したい。3.投稿者に「そういう投稿はうざいですよ。」と親切心から投稿している。閲覧者のことまでは考えが及んでいない。4.「うざい」投稿をした投稿者を断罪したい。自分は正義感に溢れていると思っている。NAL-6295とりあえず、家に帰って検証してから、故障窓口に電話しないと・・・。定時内しかつながらないから、家に帰ってまた、いろいろとメモを取って職場で電話しないといけないのですね。オンライン受付してほしいよ。見つけたと思った電話番号ではだめだった検証してから、故障窓口に電話して交換してもらえる事になったのだが、保証書をFAXしないといけない。自宅にFAXはないので、まだ送っていないのだが、困ったな。交換してもらえることになってよかった。NAL-6295C#は、式だけではなく、メソッドのように{}で囲った中にステートメントを書ける。VBは、式だけしか書けない。この違いは結構大きい。匿名型に関していえば、C#は、宣言時に初期化した内容を書き換えることができない。(ReadOnly)VBは、宣言時に初期化した内容を書き換えることができる。書き換えたくない場合はkeyキーワードでReadOnlyにできる。この違いも結構大きい。いいとこ取りしたいなぁ。皆様、ぜひご利用ください。ホーム今後のために、ポインタ。NAL-6295先日購入した、マイクロソフト製のキーボードを修理に出したくて、一所懸命マイクロソフトのサイトで修理に出すためのコンタクト先をさがした。それにも、かなり時間がかかって、NとMの押下時のセンサが鈍いだけだからあきらめようかというところでやっと見つけた。なんで、このご時世、電話だけでしか受け付けてないのか。NAL-6295の舌先三寸プロダクトレジストレーションセンターに書いてある問い合わせ先の中に、ハードウェアの故障とあったので、電話してみたら、「その手の依頼は取り扱っていない」といわれてしまった。教えてもらった電話番号はフリーダイヤルじゃない。一度サポートに電話して故障が確定したら修理ではなく交換という手続きになっているらしい。教えてもらった電話番号を後で調べてみたら、サイト上はオフィスの無償サポートの電話番号なんだよね。わかりづらいなぁ・・・。ヘルプとサポート電話が混んでいて、自動アナウンスでサポートのページでも問い合わせられると言っていたので、探してみた。ここから製品別サポートのページに飛べという話みたいなんだけど、まだ、この製品へのリンクが存在しない・・・。発売されてから、もう1ヶ月経とうとしているんだけどなぁ・・・。追記:電話がつながって、いろいろと聞いてみたら、ハードウェア製品は電話でのみの受付らしいという事がわかった。故障かどうかの切り分けができるまでは、フリーダイヤルじゃない方に電話してからじゃないと、故障の受付をしてくれないという事もわかった。そのわりにプロダクトレジストレーションセンターには故障の窓口への電話番号しか書いていないんだよね・・・。なんと不親切な・・・。やって、実際に故障してから、故障した製品の交換にたどりつくまでに人数を絞って、コストを削減しているのかと、穿ったみかたもしたくなる。家に帰って検証してから、故障窓口に電話しないと・・・。定時内しかつながらないから、家に帰ってまた、いろいろとメモを取って職場で電話しないといけないのですね。オンライン受付してほしいよ。雑感なぜ、修理の依頼を電話でしか受け付けていないのだ。NAL-6295先日購入した、マイクロソフト製のキーボードを修理に出したくて、一所懸命マイクロソフトのサイトで修理に出すためのコンタクト先をさがした。それにも、かなり時間がかかって、NとMの押下時のセンサが鈍いだけだからあきらめようかというところでやっと見つけた。なんで、このご時世、電話だけでしか受け付けてないのか。LiveIDを登録してユーザ登録させるくらいなんだから、ユーザ登録のページ経由で修理の受付をしてくれても良いのではないかと思う。なんのためのユーザ登録だよ。EPSONなんかは、ユーザ登録経由で修理の受付もしてくれたし、一切電話を利用しないで全て片付いた。売った後のことも考えてほしいし、今後ハードウェアを売って行くつもりがあるのなら考える必要があるだろう。修理に出すつもりのキーボードとマウスのセットは、会社と自宅用に2セット購入するくらい良いものなのに・・・。NAL-6295第20回codeseek勉強会を開催します。今回は、TechEdの開発者で一番話題になったLINQを取り上げます。管理技術が通用しなくなるものでもあります。今回の勉強会では、このLINQがアプリケーションプログラミングにおいて、コーディングに及ぼす影響を中心に意見交換をする場にしたいと思っています。勉強会のお知らせ第20回codeseek勉強会が開催されます。内容に興味のある方は申し込みしてみてはいかがでしょうか。申し込みはこちらから。NAL-6295ConflictOptionをCompareRowVersionに指定しているとき、テーブルにtimestamp(rowversion)列が存在するときは、主キー+timestamp列で、テーブルにtimestamp(rowversion)列が存在しないときは、主キーのみ(overwriteChanges相当)でwhere句が生成される。timestamp列が存在しないときは、CompareAllSearchableValues(全ての項目を比較する。)相当になったほうが安全なのになとふと思った。全テーブルにtimestamp列があれば、何も困る事は無いんだけれども。.NET読みやすいコードのためにLINQを利用する。NAL-6295最初に断っておきたいことC#3.0の話です。LINQやラムダ式自体の説明はしていません。簡単なサンプルにするため仕様がシンプルで効果を感じられないかもしれませんが、もしもっと複雑な仕様だったら等、想像してみてください。最初に、下記のサンプルを見てください。受け取った在庫リストの集計対象のものだけ集計したい。集計対象とは、数量が10より大きくて、数量を1000で割った時の余りが0のものの事である。在庫情報.金額;}}}}}この例の場合、たしかに仕様を実現していますが、if文が実現している仕様についてコード上から読み取ることができません。そこで、ラムダ式を利用し、集計対象の時にtrueを返す匿名メソッドを作成して実装してみます。在庫情報.金額;}}}その結果、集計対象の在庫のみ集計するという部分と、集計対象である条件の詳細部分が分離されました。ここでさらにLINQを利用して、ループの部分が実際に何をしているのかをコードに残すようにします。在庫情報.金額).Sum()};}}その結果、ループがなくなりましたが、在庫リストから集計対象のもののみを抽出(Where)し、集計(Sum)している事がコードに埋め込まれました。classを作成していましたが、その必要がなくなり、その場限りの匿名型で済むようになりました。ところでサンプルコードだけを見ているとわかりませんが、集計した結果がint型の範囲を超えた時、サンプル2まで(ループで集計している)とサンプル3以降(LINQを利用している。)で実行時の挙動が違います。サンプル2までは、例外が発生せず、マイナス値になってしまいます。サンプル3以降は、ちゃんとOverflowExceptionが発生します。int.MaxValueの条件がtrueになることが無いため、いつまでも例外が発生しません。在庫情報.金額;}}とする必要があります。うっかり間違った実装をしてしまうと、オーバフロー時に例外を発行させているつもりで、実は発行していないという状況になってしまいますので、そういう点でも、このくらいの集計ならLINQを利用した方が安全です。Arcimedia.。