ASP.NET Web サーバーでデバッグを開始できません(実行環境 ローカルIIS)

ASP.NET Web サーバーでデバッグを開始できません
Web サーバーでデバッグを開始できません。起動された URL に一致する Web サイトは IIS の一覧に含まれていません。
詳細については [ヘルプ] をクリックしてください。

プロジェクトの実行環境を ローカルIIS にしている場合、Visual Studio を 管理者権限 で実行しなければなりません。

上記エラーで合っていることは、「 Web サーバーでデバッグを開始できません 」という部分のみ(笑

C# decimal で小数点を四捨五入して文字列にする

decimal型の変数を四捨五入して画面表示したい場合に便利な書き方。
d = 1000.4m;
// 切り捨てられ 1001 になる
var dValue = string.Format("{0:0}", d);

d = 1000.5m;
// 繰り上げされ 1000 になる
dValue = string.Format("{0:0}", d);

MVC なら、View 内に Razor で直接書くのもいいですね。


C# int を bool に変換する

int を bool に変換

int を bool に変換

var flg0 = 0;
var flg1 = 1;

// false
var result0 = Convert.ToBoolean(flg0);

// true
var result1 = Convert.ToBoolean(flg1);

上記の方法で int を bool に変換することはできます。
…できるのですが、「 0 以外は全て true 」になる(笑)。

こういう変換が必要になるシーンは確かにあります。

しかし、 0 以外は true になってしまうことを理解してコーディングしないと、とんでもないバグの温床になるので注意。

【 参考記事 】

悪いエラーメッセージの例


JRE POINT
https://www.jrepoint.jp/

例えば、ログイン時のパスワード間違いのエラーメッセージは、「 ○○文字以下で~です 」等の詳細な情報を与えると、パスワードをクラックされる危険性があるためか、曖昧なメッセージがいい、という意見もあります。
(個人的にはおかしいと思っていますが)

この画面は新規登録ですが、エラーメッセージをログイン時のそれと使い回しているのか、

「文字数が足りません。」

という、意味不明なメッセージが出ました。
実は私が入力したパスワードは、文字数が多く、「 記号 」と「 数字 」が足りなかったのです。

むしろ「 文字数大杉www」とでも出た方がわかりやすいです。

こういうのは、設計者が周りの意見を聞かず要件定義をしていると起こりがちです。

設計書に意見も言えない雰囲気があるか、誰も責任を取りたくから「 誰も何も言わない 」と、こういう「 ユーザーの方向を向いていない 」ものができあがってしまいます。

そんな現場に遭遇したら、使いづらいシステムにドロップキックをして。さっさと去りましょう。

ATOK passport のシリアルナンバー確認方法

ATOK passport のシリアルナンバー確認方法

登録製品・シリアルナンバーの照会
https://www.justsystems.com/jp/service/onl/search.html

このページ自体 わかりづらい のですが(笑)、ページ下部に「 次へ進む 」ボタンがあります。ページの指示に従ってログインして、シリアルナンバーを確認することができます。

C# dictionary 型の引数を省略したメソッド

省略する際の初期値はどうするんだったかな?

調べたら、null で良いらしい。
初期値が null なので、扱いには気をつけないといけない。

static string GetUserName(Dictionary<int, string> keyValuePairs = null)
{
    return "John";
}