続きはこちらで書いています。 購読いただけるとうれしいです。 ichiroku11.github.io はてなブログの投稿はこのまま移さない予定です。
UrlHelperのActionLinkメソッドを使うと絶対URLを取得できます。 ASP.NET Core 3.0で追加されたようです。知らなかった。 docs.microsoft.com Actionメソッド Actionメソッドは相対URLを取得できます。普段使うやつですね。 Url.Action("Index", "Sample") /…
EF Coreで相関サブクエリを使ってデータを取得するサンプルを書いてみました。 サブクエリはselect句、from句、where句に記述できますが、今回はwhere句内のサブクエリです。相関ではない単純なサブクエリを試したあと、相関サブクエリでのデータ取得を試し…
BootstrapのModalを使っていると、ほとんど同じマークアップで一部だけを変更したいことがあると思います。 あるあるな要件かなと思いますが、 サイト内で使うモーダルはだいたい同じHTMLで統一したい(class属性も揃えたい) モーダルのタイトルや本文はそ…
TagHelperを調べているとTagHelperOutputクラスに次のプロパティを見つけました。 PreContent PostContent PreElement PostElement このあたりのプロパティを使うと、タグの前後にタグを出力して例えばタグを入れ子にするといったこともできるようです。 と…
ASP.NET Core の破壊的変更 - .NET Core | Microsoft Docs 上記ドキュメントにある「コントローラアクション名からAsync サフィックスが削除される」ことを確認してみました。 MVC: コントローラー アクション名から Async サフィックスを削除 aspnet/AspNet…
SQL Serverでシーケンスを使うサンプルです。 シーケンスを久しぶりに使おうと思ったらあまり覚えておらず、以前に試したので記事が残ってるかと探してみましたが、見つからなかったのでさらっと残しておきます。 ざっくり言うとシーケンスは連番を生成する…
Type.IsAssignableFromは「メソッドを呼び出すインスタンス型の変数」に「メソッドの引数で指定した型のインスタンス」を割り当てることができるかどうかを判断します。 このメソッドはあるインターフェイスを実装しているか?あるクラスを派生しているか?…
ASP.NET Coreでファイルを扱うサンプルです。 ドキュメントはこのあたり。 docs.microsoft.com 任意の物理ファイルを扱うには、IFileProviderを実装したPhysicalFileProviderを使います。 // ルートフォルダ(=スコープ)を指定してファイルプロバイダを生成…
ASP.NET Core 2.2からサポートされているインプロセスホスティングモデル。その特徴の1つをDocsから引用します。 クライアントの切断が検出されます。 クライアントが切断されると、HttpContext.RequestAbortedキャンセルトークンが取り消されます。 docs.mi…
ASP.NET Core MVCでSerilogを使ってファイルにログ出力するサンプルを書いてみました。 Serilog — simple .NET logging with fully-structured events サンプルでは次のことを実現しています。 ログをファイルに出力する 日付ごとにログファイルを作成する …
マッピング元はポリモーフィズムもいけるよね?と確認したくてサンプルを書いてみました。 いつものごとくモデルとプロファイルを用意します。 // マッピング元の親クラス public abstract class SampleSrcBase { public int Id { get; set; } public string…
ちょっと発見だったのでメモ。 AutoMapperでは、マッピング先のコンストラクタを呼び出してマッピングすることができます。マッピング先にはpublicなsetterプロパティも必要ありません。 ということでサンプルコード。 モデルとプロファイルを用意して、 // …
ASP.NET Core MVCではビュー名を指定してビューを探すと思いますが、ビュー名だけでなくて相対パスも指定できますよというメモ。 相対パスは~か/ではじまる文字列です。 Controller.Viewメソッドの引数viewName ViewResultを生成するメソッドですね。このメ…
今さら感いっぱいですが、気づいたらEnumerableに次の拡張メソッドが追加されていました。 Enumerable.Prependメソッド シーケンスの最初に要素を追加する Enumerable.Appendメソッド シーケンスの最後に要素を追加する 今まではちょっと微妙かなと思いつつ…
ASP.NET Core MVCの勉強の記録です。 こちらのドキュメントを参考にしてIdentityを使わないCookie認証を試しました。 ASP.NET Core Identity なしでの cookie 認証を使用します。 | Microsoft Docs Cookie認証はいわゆるフォーム認証だと思うんですが、もし…
部分ビューから自身の部分ビューを再帰で呼び出しできるよね?と思って試したらできましたというお話。 以下は次のul・liを作るサンプルです。 モデルを準備 まずはノードを表すモデルとデータを用意します。 // ノード public class Node { // 名前 public …
ASP.NET Core MVCのクッキーの勉強メモです。 クッキーを設定する レスポンスにクッキーを設定するには、IResponseCookies.Appendメソッドを使います。 // クッキーを設定する HttpContext.Response.Cookies.Append("test", "Hoge"); // レスポンスに追加さ…
タグヘルパーを作ってみていきなりハマったのでもメモしておきます。 @addTagHelperディレクティブでタグヘルパーを使えるようにしますが、このときに指定するのは名前空間ではなくアセンブリ名です。 例えば次のようなTagHelperを作ったとして、 // アセン…
T-SQLのメモです。 開始日と終了日を指定して、その期間の日付一覧を取得したいと思います。 再帰CTE(共通テーブル式)を使って書くとこんな感じになるのかなと。 -- 指定した期間の日付一覧を取得するクエリ -- @start 開始日(その日は含む) -- @end 終…
ASP.NET Core MVCの勉強の記録です。 今回はTempDataを使ってみたいと思います。いつものようにDocsを参考にしています。 ASP.NET Core でのセッションとアプリの状態 | Microsoft Docs StartupクラスでTempDataを構成する まずはTempDataを使うために準備し…
ASP.NET Core MVCの勉強の記録です。 いつものごとくDocsを参考にして、今回はセッションを使ってみたいと思います。 ASP.NET Core でのセッションとアプリの状態 | Microsoft Docs Startupクラスでセッションを構成する まずはセッションを使えるようにしま…
オプションパターンを使って設定ファイルから構成情報を読み込むサンプルです。 こちらを読みながら試しました。 ASP.NET Core のオプション パターン | Microsoft Docs 上記ドキュメントにもメリットが書いてありますが、平たく言ってしまうと「オプション…
グローバルフィルタを使って認証を必要とする方法です。認証を必要とするというかアクセス制御するというか。 ウェブアプリのうちログインを必要とする部分が多くてログイン不要な部分が少ない場合、グローバルフィルタで全体を制御しつつ、ログインなしで利…
lag関数とlead関数を知ったのでメモしておきます。 LAG (Transact-SQL) | Microsoft Docs LEAD (Transact-SQL) | Microsoft Docs それぞれ一言で説明すると、 lag関数 ... n個前の行を取得する lead関数 ... n個後の行を取得する といった感じです。この2つ…
知らなかったのでメモ。 count(*)は全行数を取得するのに対して、count(カラム名)はnullを除く行数を取得します。 サンプルクエリを書いて確認しておきましょう。 select -- nullに関係なく全行数を取得 count(*) as [count(*)], -- nullを除く行数を取得 co…
ミドルウェアとかミドルウェアパイプラインとかリクエストデリゲートなどを理解するために、次のドキュメントを読みながら記事内にあるミドルウェアパイプラインの画像の動きを作ってみました。 ASP.NET Core のミドルウェア | Microsoft Docs この画像のこ…
Azure Cognitive ServicesにあるComputer Vision APIを使ってみました。 Computer Vision — 画像処理および画像分析 | Microsoft Azure Computer Vision APIといってもいくつか機能があって、今回はそのうちOCR機能をJavaScript(というかTypeScript)で試し…
ASP.NET Core MVCのビューコンポーネントを試してみました。 ビュー コンポーネント | Microsoft Docs ビューコンポーネントは従来のASP.NET MVCにあったチャイルドアクション(子アクション、ビューからRenderActionで呼び出していたあれ)の代わりになる機…
ASP.NET Core MVCのビュー全体で、プロジェクト独自のプロパティやメソッドを追加して利用したいことがあるかなと思います。 デフォルトでは、ビューはMicrosoft.AspNetCore.Mvc.Razor.RazorPage<TModel>を継承しています。このクラスを派生したクラスを用意すること</tmodel>…