redwarrior’s diary

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

Hyper-V上のWebサイト(Redmine, Jira)にホストPCのブラウザからアクセスする

Hyper-V上の仮想マシンにRedmineやJiraを構築したが、仮想マシン内のブラウザでは画面が狭いとか、コピー&ペースト出来ない等の課題があったので、Hyper-V上のWebサイトにホストPCのブラウザからアクセスする方法を調べました。

Hyper-V上にJiraを構築する

ヘルプデスク的な使い勝手を求めて、RedmineだけでなくJiraも検証することになったのでHyper-V上にJiraを構築する方法を調べました。

Hyper-V上にRedmineを構築する

ヘルプデスク的な使い勝手を求めて、Redmineを検証することになったのでHyper-V上にRedmineを構築する方法を調べました。

TFSの新しいビルド実行時にWebデプロイも行う

XAMLでない方の新しいビルドが成功したので、Webデプロイも試してみた。 どこに書いてあったか忘れたが、MSBuild引数を設定する事で、Webデプロイが出来るらしいので、やってみた。 上の画像の MSBuild引数のところに、XAMLビルドで設定していた引数を設定す…

Excel読込でNPOIをEPPlusのように使うため拡張メソッドを作成した

なぜEPPlusを直接使わないかは、過去の記事を参照。 redwarrior.hateblo.jp NPOIを直接使うと、同じようなコーディングを繰り返し行う事が結構あったので、拡張メソッドを作成しました。 EPPlusを参考にしたメソッドや、あると便利そうなメソッドを作りまし…

(小ネタ)拡張メソッドを使用する場合も、Nullチェックは必要です!

IEnumerableインターフェイスのAnyメソッドを使用した時に、変数の値がnullでエラーになった。Anyメソッドは拡張メソッドなので、変数がnullでエラーになるのはおかしいのでは?と思ったが、答えは意外なところに。

はてなブログをhttps化しました。

etc

id:kazuakix さんの以下の記事を読んで、id:shiba-yan さんや id:tanaka733 さんもhttps化をおすすめしていたので、当ブログもhttps化してみました。 blog.kazuakix.jp サイドバーのカスタマイズ等はしていなかったので、ほとんど対応は不要だと思っていまし…

Team Foundation Server のXAMLでない方のビルド定義の作成・実行を1から解説する

前回からあっという間に2か月以上たってしまった。細く長くがんばろう。 2015以降のTFSではXAMLビルドは推奨されない*1方式になるので、新しいビルド環境の構築を試してみた。 環境:Team Foundation Server 2015 Update 4、Windows Server 2012、SQL Server…

Windows Server 2016 で WCF Data Services

Windows Server 2008 で動いていた WCF Data ServicesアプリケーションをWindows Server 2016に載せ替えたので、メモを残しておく。 WCF Data Servicesアプリケーションを発行し、アクセスすると404エラーが発生する WCF Data Servicesの拡張子「.svc」がIIS…

ASP.NET MVC でチェックボックスのカスタマイズをCSSのみで行う。

ググると以下のようなサイトがヒットするが、そのままでは、ASP.NET MVC で動作しない。 cultureacademia.jp なぜかと言うと、Form要素を作成するときは、HTMLタグを直接入力することはあまりせず、ビューヘルパー(@Html.***For)を使用することが多く、チ…

(小ネタ)IISのApplicationPoolIdentityでデータベースへのアクセス許可を設定する

以前にメモしていたのに、忘れていて余分な時間を費やしてしまったので、忘れないようにブログに残しておく。 以下のサイトを参考にWebアプリケーションを作成し、リモートのIIS上にデプロイする。 www.nuits.jp Webサイトを追加した場合に設定を変更しなけ…

(小ネタ)SQL Server Management Studio (SSMS) のSQLフォーマットには、ApexSQL Refactor が良さげ

SQL Server Management StudioのSQLの書式をフォーマットするのに、SQL Server 2012の時は、「Poor Man's T-Sql Formatter SSMS & Visual Studio AddIn」を使っていました。 SQL Server 2014にも対応していたのですが、SQL Server 2016にはその時点では対応…

NLogを使用して、開発環境と本番環境でログの出力先を切り替える設定について

問題 Webアプリケーション開発でNLogを使ってログ出力をしていて、本番環境に乗せることになった時に、開発環境と同じパスにログを出力できない事ってありますよね。 例えば、開発時はソリューション内のフォルダに出力していたけど、本番ではWebから参照で…

(小ネタ)ASP.NET MVC でテキストボックスに小数を入力する時に日本語入力をオフにする方法

今回も以下に関連した話題。 redwarrior.hateblo.jp 二つ前の記事でも書きましたが、上記ではinputタグのtype属性が「text」になってしまうため、フォーカスが当たった時に日本語入力モードになってしまいます。 これだと数字を入力した後にいちいち確定しな…

Windows Containersで複数アプリケーションを運用する事例って見ないな

サーバー更改により、今後はWindows Server 2016を使うことになるので、Windows Containersで試してみたいなと思っているのだけど、複数アプリケーションを運用する事例が見つからない。 Docker(というかLinuxコンテナ)では、nginx+nginx-proxyを使用する…

ASP.NET MVC で inputタグの type属性を指定する

redwarrior.hateblo.jp 上記を行うと表示は変えられるのですが、実はinputタグの type属性が全て「text」になってしまいます。 これだと日付項目に bootstrap-datepicker を使用する時にinputタグをtype="datetime"で絞り込めないため、その解決方法を調べま…

(小ネタ)Entity Framework でタイムアウトの設定方法まとめ

ExecuteSqlCommandでストアドプロシージャを実行した時にタイムアウトが発生してエラーになってしまったので、タイムアウトの時間を変更する方法を調べてみました。 また、デバック実行時にDB接続でタイムアウトがぼちぼち発生して面倒なので、コネクション…

SQL Server データベース プロジェクトを使用してDBのリファクタリングを行う

はじめに 明けましておめでとうございます。本年もよろしくお願いいたします。去年はあまり更新できなかったので、今年はもっと増やしていきたいですね。 さて、Visual Studio で作成できるプロジェクトの中には、「SQL Server データベース プロジェクト」…

(小ネタ)Entity Framework でdbo以外のスキーマを使用する

Entity FrameworkのCode FirstでDBを作成すると、テーブルはdboスキーマで作成されます。今回スキーマを分ける必要が出てきたので調べました。非常に簡単に設定できたので小ネタです。 Entity Frameworkでdbo以外のスキーマを使用するには、モデルクラスのク…

データベースからドメインモデルを作るのも有りな気がしてきた

Entity Framework 6が発表された当時は、Code Firstが盛んに宣伝されていたと思う。Code First以前はデザイナーで操作できると言っても自動生成されるxmlファイルの差分を見るのは辛そうだった。 そこでEntity Frameworkを使い始めた頃はCode Firstを使用し…

ユニットテストでのDBトランザクションのロールバックを共通化する

以前こんな記事を書きましたが、 redwarrior.hateblo.jp 毎回テストメソッドの中で using 文やデータ投入処理を書くのが面倒になってきたので、テストフレームワーク(MSTest)の機能を使って TestInitialize 属性でDB接続、データ投入を行い、TestCleanup …

Entity Framework で楽観的同時実行制御

EF6

基本的な内容は以下の書籍に書かれているので、今回はもう少し踏み込んだ話です。 www.shuwasystem.co.jp 上記書籍の5-4-4(236ページ)では、バージョン管理用のプロパティ名と付与する属性名の両方をTimestampとしていますが、どちらを指しているのかわか…

(小ネタ)Chaining AssertionのParameterized TestでどのTest Caseで失敗したかを記録する

Chaining Assertionでは、Parameterized Testがサポートされているが、テストが失敗した時のメッセージにはどのケースで失敗したかの情報は含まれていないため、多くのテストケースを試す場合は以下のように工夫すると良い感じです。 //公式サンプルコードを…

C#でExcelファイルを扱うライブラリごとのファイルクローズ方法(EPPlus、NPOI)

C#(ASP.NET MVC)でExcelファイルを扱う方法を調べていて、EPPlusが良さそうだったので簡単なプログラムを作成して動作を確認した。しばらく経って実際に使用する時になって、ファイル形式が .xls であることが判明。 EPPlusでは .xls のファイルは読み込め…

(小ネタ)bootstrap-datepicker (Bootstrap 3 に対応した Date Picker) で選択した日付がハイライトされない

使用しているライブラリ(NuGetから取得可能) github.com 参照するcssが間違っていた。 bootstrap.datepicker.cssではなく、bootstrap.datepicker3.cssを参照する。

TFS 2015のXAMLビルドでNuGetの復元を行わない設定をしたらビルドが超速く終わるようになった

メモ:TFS 2017は、NuGetサーバーをローカルで建てることが出来るらしいので、そちらを使った方がディスク容量の節約になると思いますし、そちらを使いましょう。 TFS 2015から新しいビルド方式が用意されて、TFS 2017もリリースされ、今後あまり使われなく…

IIS上で動くASP.NET (MVC)アプリケーションの権限について

ASP.NET MVC アプリケーションを別サーバーにデプロイして動作確認しようとしたが、DBやフォルダへのアクセス権限でエラーが発生しました。以前に設定したのが少し前で、やり方を忘れていたのと、IIS上でASP.NET MVC アプリケーションの権限について理解があ…

(小ネタ).NET Frameworkの本体と、targeting packは別物

タイトルからして、何当たり前のことを言っているんだ感が全開ですが、今後同じ間違いをしないように書いておきます。 開発環境とネットワークでつながっていない環境に、ASP.NET MVC 5 アプリケーションをデプロイする必要がありました。 デプロイの「発行…

デプロイできたけど実行できない場合の対処方法(とTFS上のデプロイ)

ASP.NET MVC5でWebアプリケーションを作成し、IISへの公開も成功して、さて確認するぞ!という事でアクセスしたらエラーが発生して表示できなかったので、原因を調べました。 動作環境 ASP.NET MVC 5.2.3 Windows 2008 IIS 7 設定内容 IIS 7では以下の設定が…

(小ネタ)Table-Per-Hierarchy とは

仕事の都合やら、質の高い内容を書こうとしたせいで、4か月近く更新が出来ていませんでした。今日からリフレッシュして、改めて気負わずに記事を書いていきたいと思います。 Entity Framework 6とEntity Framework Coreの違いを紹介した記事を読んでいて、…