くうと徒然なるままに

モバイルアプリを作りながらバックエンドも作っています。

ASP.NET Core

ASP.NET Core で DI した DbContext が Cannot access a disposed object. になっている。

ASP.NET Core + Entity Framework Core で開発してます。 DbContext を DI しています。 DbContextのインスタンスを利用してDBを操作しようとすると以下のエラーが出てしまいました。 Cannot access a disposed object. 解決方法 Controller のメソッドが非…

Entity Framework Core で Unit Test しやすくするヘルパークラスを書いた@InMemory-SqLite

こんにちは〜!最近C# でサーバーサイドを雑に書いてます〜(Android アプリを作ってたはずが、気づいたらサーバーサイドを書いていた... TDD を試しているのですが、 Entity Framework Core という 主にASP.NET Core 向けなORM を利用しているところでもTDD…

ASP.NET Core Razor の TagHelper Intellisense が効かなかった。

環境 Visual Studio 2017 With Resharper Windows 10 修復方法 _Viewimports.cshtml に以下の記述を追加する。 @addTagHelper "*,Microsoft.AspNetCore.Mvc.TagHelpers" 情報元 stackoverflow.com

ASP.NET Core で ルートページを開いたときに Swagger のページへ自動遷移するようにした

こんにちは。 ASP.net Core 2.x はいいぞ ASP.NET Core を利用しWebAPIを作成していると ルートページ(http://example.com/) とかを開いたら自動で Swagger ページに遷移してほしいことはたまによくあると思います。 検証環境 Microsoft Azure Web Apps ル…

ASP.NET Core の単体テストで IActionResult からステータスコードを判定する

ASP.NET Core の Controller で IActionResult な戻り値になっている関数はよくあります。 そんな Controller の戻り値を単体テストで呼び出すときに ステータスコードを判定したい というのはよくあると思います。 解決方法 Controller のメソッドの戻り値…

ASP.NET Core で Request.Body.Length を読もうとすると NotSupported Exception を吐くから解決してみた

ASP.NET Core を使っていて Body に入っているデータの長さを調べようとすることはよくあると思います。 そんなときに、 Request.bdy.Length を呼び出すと NotSupportedException を吐いてしまいました。 原因 Request.Body は Stream ですが、 Length など…

ASP.NET Core な Web アプリを Azure Web Apps に VSTS から CI/CD するときに、Error Code: ERROR_FILE_IN_USE って出る

環境 ASP.NET Core Azure Web Apps Deployment Slot は使ってない VSTS 現状 App Service に Deploy しようとしていますが、 ASP.NET Core アプリ(.dll) がロックされていてデプロイできないです。 再起動すればデプロイ自体はできるようになりますが、 デプ…

asp.net core で body から読み込む Controller method を Unit Test する方法

asp.net core の Controller で body から直接読み込みほげほげすることはよくあると思います。 そんなプログラムのUnit Test の書き方についてです。 Controller に生えている Request プロパティの Body に直接データをぶち込もうとすると 読み取り専用に…

asp.net core で byte の配列を body より読み込む方法

asp.net で body より値を読み込む時は Controller の関数の引数に [frombody] ClassName hoge みたいに指定すると思います。 body の値を自動的にパースして指定されたクラスのインスタンスとして格納してくれるわけです。 しかし、 byte の配列は String …

ASP.NET Core web API 2.0 で良さげな API 仕様書を Swagger 使って自動錬成する

前書き API 仕様書作るのつらい Swagger を心込めてお手製するのつらい だから私は、API仕様書を自動生成する 本題 環境 実際に編集していく Nuget から必要なパッケージをインストールしていく コーディング! 確認 最後に 前書き API 仕様書作るのつらい …