C#
はじめに 先日デザインパターンのProxyパターンを勉強したところ、お客様先(現在常駐している現場)の上司が記事を見てくださって「.NET FrameworkならRealProxy, .NET CoreならDispatchProxyを調べるとさらに勉強になりますよ~!」とアドバイスをいただい…
はじめに GoFのデザインパターンの1つであるProxyパターンを体験してみました。 Proxyパターンとは Proxyパターンとは、対象クラスの処理をそのクラス以外の代理人クラスが行うように処理にするデザインパターンです。 どうしても対象のクラスに処理を任せな…
はじめに C#のお勉強として出井秀行さんの『C# コードレシピ集』を読んでいたらカルチャ依存に関する文字列比較について学んだので備忘録として残しておきます。 サンプルコード 以下はstr1, str2, str3の文字列をそれぞれ比較しています。 StringComparison…
はじめに C#のお勉強として出井秀行さんの『C# コードレシピ集』を読んでいたらオブジェクトを複製するMemberwiseCloneメソッドというものを知ったので備忘録として残しておきます。 サンプルコード 以下は値型のメンバーと参照型のメンバーを持つオブジェク…
はじめに 通常例外処理を書く際はtry-catchで処理を書いていきますが、C#6.0で導入された例外フィルターを用いるとcatchに対して条件を設けることが可能です。 サンプルコード catchに対して条件を設けるにはwhenをcatch句の後に記載します。 以下は特定のエ…
はじめに Action, Func, Predicateデリゲートについて、使い方をざっくりまとめてみました。 あくまで使い方に全振りしたので正直なところ実用性は皆無なサンプルコードになっています(;´∀`) 使い方を理解する一助になれば幸いです。 Actionデリゲート デリ…
はじめに 現在常駐しているお客様先の上司とお話していたところ、EFCore(Entity Framework Core)のDetectChangesというキーワードが出てきて何だそれは!!?という状態になったので調べてみました。 ChangeTracker.AutoDetectChangesEnabledプロパティ EFCo…
はじめに ASP.NET Coreでモデルを定義する場合はEntityクラスにテーブル定義を書き、DbContextクラスでデータベース定義を行います。 今回はそれらの定義に加えてEFCoreで特定のカラムにインデックスを付与する方法を記載します。 HasIndexメソッド EFCoreを…
はじめに EntityFrameworkにはC#のクラスからデータベースを作成・更新できるマイグレーション機能があります。 今回はその中でも特定のバージョンへデータベースを更新するマイグレーション機能について記載していこうと思います。 使用するコマンド 使用す…
はじめに ASP.NET Core + SwaggerUIの画面でMediaTypeを切り替える箇所がありますが、こちらの選択オプションを変更する方法を記載します。 デフォルトでは以下のように「text/plain」「application/json」「text/json」の3つが表示されます。 ProducesAttri…
はじめに 下記の記事にてASP.NET Core WebAPIでCSVとJSONの出力を切り替えるサンプル記事を作成しましたが、お客様先(常駐先)の上司にCustom Formatterの存在を教えてもらったので勉強として色々調査しながら実装してみました! oooomincrypto.hatenadiary…
はじめに ASP.NET Core WebAPIでCSVとJsonの両方の出力が切り替えるサンプルを作ってみました。 今回はMediaTypeの値でcsvファイルとJsonの切り替えが行われるようにしています。 サンプルコード プロジェクトはASP.NET Core WebAPIテンプレートを利用してい…
はじめに ASP.NET CoreではDIシステムに型を登録することができます(一般的にはConfigureServicesメソッド内にて)。 今回の記事ではDIシステムへの型登録を動的に変更する方法を備忘録として残しておきます。 サンプルコード 下記のサンプルコードではapps…
はじめに 特定のサイトのお知らせ欄が更新されたかな?と毎回見に行くのが面倒だったのでスクレイピングして結果をLINEで送ってくれるバッチ処理を作ってみました。 アプリ概要と構成図 Amazon EventBridgeが特定の時間になったらLambda関数を実行します。 L…
はじめに 以下の記事でS3からオブジェクトを取得したり更新したりする方法について記載しましたが、こちらの記事ではAmazonS3を利用するための設定(DI)に関する内容を記載します。 oooomincrypto.hatenadiary.jp AWSSDK.Extensions.NETCore.Setupのインスト…
はじめに ASP.NET CoreプロジェクトでAWS S3からオブジェクトを取得したり更新したりする方法を記載します。 NugetからAWSSDK.S3を取得する Visual Studioにてプロジェクトを右クリック→「Nugetパッケージの管理」よりAWSSDK.S3をインストールします。 S3か…
はじめに EntityFramework CoreとSQLServerでオプティミスティック同時実行制御を実装する際はSQLServerのROWVERSION列を使うのが一般的ですが、SQLServer以外でオプティミスティック同時実行制御を実装する際は少し工夫が必要です。 サンプルコード 以下のM…
C#のDateTime.DaysInMonthメソッドを用いて月末の日を求める方法を解説します。
C#のSpan構造体の使い方とサンプルコードを記載しています。
はじめに Microsoftの公式解説書『プログラミング ASP.NET Core』を読んで強く型指定を行った上でビューにデータを渡す方法を知ったので備忘録としてまとめたいと思います。 今までViewDataやViewBagを利用していた 恥ずかしながら今まではViewDataやViewBag…
C#8.0から追加されたインターフェースでもメソッドが実装できるようになった機能の説明です。
はじめに Dockerの勉強として、以前ASP.NET Coreで自作したアプリをDocker上で動かしてみました。 動作環境 Windows10 Pro .NET Core SDK 5.0.205 Docker Version 19.03.12 Visual Studio 2019 C:\Work>ver Microsoft Windows [Version 10.0.19042.1110] C:\…
EFCoreを用いて大量データの削除を行う際のひと工夫です。LinqのTakeメソッドを用いることで細かく削除を行います。
はじめに 自学でデザインパターンや設計を勉強してもなかなか定着しなかったのですが、お客様先(常駐している現場)の上司に教えてもらって一気に理解が進んだので備忘録として残しておこうと思います。 Open-Closed Principle(OCP)とは? OCPとはSOLID原則…
おはようございます。おーみんです。 再帰プログラミングの勉強としてプリザンターのディレクトリとファイルを全部呼び出してみました!(1~3枚目)意外と多くてこれでもごく一部なんですねw4枚目はプログラム~。再帰は実務でも使うことがあるので、基礎…
おはようございます。おーみんです。 今回の記事ではC#の「三項演算子」について書いていこうと思います。 三項演算子とは? 三項演算子は条件の評価結果をtrueまたはfalseに応じて返すものです。 いわゆるif文と同じようなものです。 三項演算子の構文を以…
おはようございます。おーみんです。 現在C#のお勉強中です。 今回はラムダ式について、学んだ内容をまとめていこうと思います。 ラムダ式とは? ラムダ式とはC#3.0から出てきた概念の一つで、ラムダ演算子「=>」を用いたプログラムのことを言います(という…
おはようございます。おーみんです。 現在C#をお勉強中です。 今回は匿名メソッドについて、学んだ内容をまとめていこうと思います。 匿名メソッドとは? サンプルプログラム 最後に 匿名メソッドとは? 匿名メソッドとは、名前の通り名前が不明なメソッドの…
おはようございます。おーみんです。 現在プログラミング言語「C#」のお勉強中です。 今回はデリゲートについて、学んだ内容をまとめていこうと思います。 デリゲートとは? デリゲートの使い方 デリゲートを使ったサンプルプログラム 最後に デリゲートとは…
おはようございます。おーみんです。 値渡しと参照渡しの違い 参考文献 値渡し 参照渡し それぞれの仕組み なぜ値型と参照型が必要なのか? 最後に 値渡しと参照渡しの違い プログラミングの勉強をしていると「値渡し」と「参照渡し」の比較が結構な確率で出…