Azure に配置した Web アプリケーションにおいて、アプリ設定から Web.Config の値を上書きすることができます。
Web.Config は " や & などを実体参照(" とか & 等)にエスケープしますが、Azure で設定する際にはエスケープせずにそのまま " や & と記述します。
接続文字列や URL 等でよく設定することなので、Azure に乗せたら動かない、ということが起こってしまいますね…。
[C# 7] int.TryParse の out 変数を省略する
C# 7 の TryParse
TryParse 系は使用する前に変数を用意しておかなければならず、ときに無駄な変数を宣言するという微妙なコードになってしまうこともありました。C# 7 からは第二パラメーターに渡す変数の仕様が少し変更されて便利になりました。
- out にそのまま変数宣言ができるように
- _ の登場により TryParse の変換結果がいらない場合でもスマートに書けるように
var s = "0"; // true, 判定だけをしたい var b = int.TryParse(s, out int _); // i は宣言されるため、以降の処理で使用可 int.TryParse(s, out int i); // 1 i = i + 1;
out の後は var でも OK 。
C# 7.0で知っておくべき10の新機能(前編)
http://www.buildinsider.net/language/csharplang/070001
Selenium Builder と IE11 で UI テスト
Selenium による UI テスト
http://www.seleniumhq.org/Selenium はポピュラーな UI テストツールですが、Firefox のアドオンである「Selenium Builder」を使えば、テストケースをプログラムしなくてもテストケースを作成することができます。
ASP.NET MVC のカスタムエラーページ
ASP.NET で 404 等のエラーが発生した場合、デフォルトで用意されているエラー画面が表示されます。
Web.Config にカスタムエラーページを設定することで、独自のエラーページを表示させることができます。
<system.web>
<customErrors mode="On">
<error statusCode="404" redirect="~/404.html"/>
</customErrors>
</system.web>
例)404 エラー発生時にルートに配置した 404.html を表示させる。
Web.Config にカスタムエラーページを設定することで、独自のエラーページを表示させることができます。
<system.web>
<customErrors mode="On">
<error statusCode="404" redirect="~/404.html"/>
</customErrors>
</system.web>
例)404 エラー発生時にルートに配置した 404.html を表示させる。
DateTime.TryParse の out を省略する
TryParse メソッドでは第二パラメーターに対応する変数を out と共に渡さなければなりません。
しかし、以下の書き方で一行で完結させることができます。
C#6.0 の言語仕様策定で却下されたそうです。
【関連記事】
var s = "2000/01/01 0:00:00"; var d = new DateTime(); DateTime.TryParse(s, out d);TryParse を判定だけに使いたい時には out を省略したいですが、省略自体はできない仕様です。
しかし、以下の書き方で一行で完結させることができます。
var s = "2000/01/01 0:00:00"; // value は変数名。なんでもいい。 DateTime.TryParse(s, out DateTime value);ちなみに、int の TryParse ではこの書き方はできません。
C#6.0 の言語仕様策定で却下されたそうです。
【関連記事】
ASP.NET MVC の Razor で Bootstrap Popovers の改行ができない
Bootstrap の Popovers で改行をしたいときは、html: true に設定して、改行コード(br タグ)を入れれば改行されます。
ただし、ASP.NET MVC の Razor の値をセットしたい場合は、 @Html.Raw() で、HTML エンコードされていないデータをセットする必要があります。
Razor の値はそのままでは HTML エンコードされて出力されるため、
がそのまま出力されてしまうのです。
ただし、ASP.NET MVC の Razor の値をセットしたい場合は、 @Html.Raw() で、HTML エンコードされていないデータをセットする必要があります。
Razor の値はそのままでは HTML エンコードされて出力されるため、
がそのまま出力されてしまうのです。
ASP.NET MVC での $ is not defined
$ is not defined とは $ が定義されていないという残念なエラーですが、$ は jQuery の定義です。
ASP.NET MVC では、App_Start 内に Script や CSS をバンドル(まとめる)するための設定を書きますが、これを参照するページ(デフォルトでは _Layout.cshtml)では読み込み順序に気をつけなければいけません。
内に Style.Render を書いて、
直前に各種 js を書きます。Bootstrap の Popover に CSS を適用させる
Bootstrap の Popover に対して自作の CSS を適用させようとした際に、class 名を設定しても当たらなかったのでメモ。
Popover は JavaScript で生成されるエレメントのため、デフォルトのクラス名で指定する必要があるらしい。
.popover-title {
}
.popover-content {
}
Popover は JavaScript で生成されるエレメントのため、デフォルトのクラス名で指定する必要があるらしい。
.popover-title {
}
.popover-content {
}
登録:
投稿 (Atom)