読者です 読者をやめる 読者になる 読者になる

redwarrior’s diary

C#, ASP.NET, WEB, G*などの雑多な情報

(小ネタ)Microsoft の Markdown ガイダンス

正しくは、TFS/VSTS上でMarkdown記法を使用するときのガイダンスだけど。 Markdownを書くときに参考になりそう。いつの間にか用意されていた。 www.visualstudio.com URLがja-jpなのに、全編英語。まあ、内容は予想がつくのでよしとする。 ちなみに、はてな…

(小ネタ)C#でデフォルト引数に今日の日付や現在時刻を指定する

ちょっと前ですが、以下の記事を読みました。あわせて読みたいの記事も読みましたが、どれも丁寧にまとめられていて良い内容でした。 techlife.cookpad.com 日付を渡すには、Rubyではデフォルト引数で行うのが簡単と書かれていたので、これをC#でやってみよ…

(小ネタ)SQL Server のテーブルをまとめて選択して削除したい

データベースの削除やSQLを実行するのではなく、GUIでテーブルを選択して削除したい場合のメモ。 SQL Server Management Studioや、Visual Studio上のサーバー エクスプローラーではなく、SQL Server オブジェクト エクスプローラーを使う。 外部キー制約な…

(小ネタ)Firefoxのはてなブックマークの拡張機能がなおった

しばらく前から、Firefoxのはてなブックマークの拡張機能で、 サイドバー表示した場合に、タグによる表示の絞り込みが出来なくなっていたのだけど、 今確認してみたら、なおっていた(絞り込まれて表示されるようになっていた)。 地味に不便だったので、な…

(小ネタ)プロダクトバックログについて勘違いしていたこと

プロダクトバックログについて勘違いしていた。 プロダクトバックログは、複数の要求に優先順位をつけたリストのことだった。 今までプロダクトバックログを個別の要求だと思っていて、プロダクトバックログの一覧とかいう言葉を使ってしまっていた。ああ、…

(小ネタ)2重ループをLINQを使って書く

コレクションが二つあって、片方のコレクションの値で、もう片方のコレクションを検索して処理を行う時に、2重ループを使うことがありますが、これはLINQを使用して書くことも出来ます。 C#で解説する「データ処理の直交化と汎用化」 − @IT ただしサイト内…

(小ネタ)改行文字を削除する

ささいな事ですが、うっかり引っかかったのでまとめておきます。 C#で文字列に含まれている改行文字を取り除く方法は、改行文字を含む位置によって違います。 末尾にある場合 TrimEndメソッドに改行文字を渡します。環境に依存しないようにCRとLFを両方とも…

(小ネタ)EqualsメソッドもGetHashCodeメソッドもReSharperで!

ReSharperカテゴリの2つ前と操作がほとんど一緒ですが、機能紹介ということで。 csファイル(クラス)を開いて、メニューのRESHARPER→Edit→Generate Codeと選択し(もしくはクラス内にカーソルを合わせて「Alt」を押しながら「Insert」を押す)、 出てきたメ…

(小ネタ)C#のユニットテストで public でないメソッドをテストする方法(MSTest)

Javaでは、publicでないメソッド(かつ、privateでもない)をテストする場合は、packageを一緒にすれば良かったのですが、C#ではどうやるんだろうと思って調べました。 参照先の通りにやったら出来たので、特に追記することはありません。 ソースコード単位…

(小ネタ)C#でメソッドの引数に値渡しが行われるのは、値型のみ

自作クラスなどの参照型の引数に ref とか out とかつけるのは意味がなく、m9(^Д^)プギャーされるのでやめた方が良いですね。 自作の構造体や列挙型は値型なので、参照渡しが必要ならばつけましょう。

(小ネタ)GitコマンドをPowerShellスクリプトに組み込む最も簡単な方法

前回の記事で、ClickOnceアプリケーションをコマンドラインから発行する方法を書きましたが、 どうせならばバージョン管理システムからソースコードをダウンロードして、ビルドが出来るようにしたいと思い、GitコマンドをPowershellスクリプトに組み込む方法…

(小ネタ)Visual Studio 2015 のバージョンがv14なわけ。(Visual Studio 2013 はv12です)

ものすごい小ネタですが、ASP.NETのフォーラムで議論されていました。 forums.asp.net アメリカでは13が不吉な番号だかららしいです。CTPの時点で話題になっていたようですね。 以下のページで、より詳しく検証されています。 blog.livedoor.jp Officeで既に…

(小ネタ)WindowsフォームでShowDialogメソッド、Showメソッド、Closeメソッド、Disposeメソッドの動作を理解する。

Windowsフォームアプリケーションのソースコードを見ていて、ShowDialogメソッド、Showメソッド、Closeメソッド、Disposeメソッドの動作の理解があいまいだったので調べました。 ShowDialogメソッド フォームクラスのShowDialogメソッドを実行すると、画面が…

(小ネタ).NETで設定ファイル(***.config)の値に半角スペースを使用する方法

.NETで設定ファイル(Web.configやApp.config)の値に半角スペースを使用したい場合がたまにあります。 代表的なのはDBの接続文字列で、AttachDbFilenameにmdfファイルのパスを指定する場合です。 コンソールアプリケーションで、SQL Server 2012 Express Lo…

(小ネタ)INotifyPropertyChangedの実装も、ReSharperはサポートしている

Windowsフォームでデータバインディングをする場合に、INotifyPropertyChangedをオブジェクトに実装する必要があるが、ReSharperを使用するとメニューから選択するだけで作成してくれる。 (どのフィールドを通知対象とするかは、フィールドごとに設定する必…

(小ネタ)ToStringメソッドもReSharperで作成してくれる!

クラスを開いて、メニューのRESHARPER→Edit→Generate Codeと選択し、出てきたメニューから「Formatting members」を選択するとプロパティを選択する画面が出てくるので、ToStringメソッドに含んでほしいプロパティを選択して、作成すると、ToStringメソッド…

(小ネタ)インターフェースのシグネチャを変更したら、実装クラスのシグネチャも変更されるReSharperならね。

タイトル以上のものは無いのですが。はは~、<m(__)m> とお辞儀をしたくなる便利さです。 やり方: interfaceソースを開いて、メソッドにカーソルを置いた状態で、メニューのRESHARPER→Refactor→Change Signatureを選択すると、メソッド名、戻り値、パラメータを編集</m(__)m>…

(小ネタ)BindingSourceを手動で更新すると、行の設定が解除される場合がある

System.Windows.Forms.BindingSourceのDataSourceプロパティに通常の(BindingListではない)Listを代入した場合、 Listの要素を更新を反映させるためには、BindingSourceのResetItemメソッドに対象のインデックスを渡して呼ぶか、ResetBindingsメソッドを呼ぶ…

(小ネタ)ASP.NET Web APIのコントローラーがIHttpActionResultを返す理由

ASP.NET Web APIのスキャフォールディングでコントローラーを作成する時、「Entity Framework を使用したアクションがある Web API 2 コントローラー」を選択すると、戻り値に、IHttpActionResultが指定される。 これはIHttpActionResultを戻り値にすれば、…

(小ネタ)ASP.NET Web API で 省略可能なパラメータを使用する

ASP.NET Web APIのメソッドの引数にデフォルト値を指定すると、パラメータをオプションとして使用する(あってもなくても動作し、省略されたパラメータにはデフォルト値を設定する)ことが出来る。 以下を参考にさせていただきました。 ASP.NET WEB API Quer…

(小ネタ)HttpClientのusingとDisposeについて

System.Net.Http.HttpClientは、IDisposableを実装しているので、usingブロックで使用すると自動的にリソースの解放が行われる。 ブロック内でHttpResponseMessageオブジェクトのDisposeメソッドの実行は不要。 ※タイトルに(小ネタ)とつけて、作業中に気づい…