-
C#7.0のローカル関数とは何ですか?
ローカル関数は、別のメンバーにネストされているタイプのプライベートメソッドです。これらは、含まれているメンバーからのみ呼び出すことができます。 ローカル関数はで宣言し、-から呼び出すことができます メソッド、特にイテレータメソッドと非同期メソッド コンストラクター プロパティアクセサー イベントアクセサー 匿名メソッド ラムダ式 ファイナライザー その他のローカル関数 例1 class Program{ public static void Main(){ void add
-
C#7.0のパターンマッチングとは何ですか?
C#7.0では、is式とswitchstatementの2つのケースでパターンマッチングが導入されています。 パターンは、値が特定の形状を持っていることをテストし、一致する形状を持っている場合、値から情報を抽出できます。 パターンマッチングは、アルゴリズムのより簡潔な構文を提供します 独自のデータ型を含め、任意のデータ型でパターンマッチングを実行できますが、if / elseの場合は、常にプリミティブを一致させる必要があります。 パターンマッチングにより、式から値を抽出できます。 パターンマッチングの前 − 例 public class PI{ publi
-
C#7.0のバイナリリテラルと数字区切り文字とは何ですか?
バイナリリテラル − C#7より前は、変数に10進数と16進数の値しか割り当てることができませんでした。 C#7.0では、バイナリリテラルが導入され、変数にバイナリ値を設定できるようになりました。 数字セパレーター − 数字区切り記号は、単一の下線(_)の形式を取ります。この区切り文字は、読みやすさを向上させる手段として、任意の数値リテラル内で使用できます。 バイナリリテラルの例 − 例 class Program{ public static void Main(){ var bn = 0b1000001;
-
C#7.0でのRefローカルとRefリターンとは何ですか?
参照戻り値を使用すると、メソッドは値ではなく変数への参照を返すことができます。 呼び出し元は、返された変数を、値または参照によって返されたかのように扱うことを選択できます。 呼び出し元は、それ自体が戻り値への参照である、reflocalと呼ばれる新しい変数を作成できます。 以下の例では、色を変更しても、元の配列の色には影響しません 例 class Program{ public static void Main(){ var colors = new[] { "blue", "green&q
-
C#8.0で新しいスイッチ式を作成するにはどうすればよいですか?
スイッチ式は、式コンテキストでスイッチのようなセマンティクスを提供します switchは、一致式とのパターンマッチに基づいて、候補のリストから実行する単一のスイッチセクションを選択する選択ステートメントです。 switchステートメントは、1つの式が3つ以上の条件に対してテストされる場合に、if-else構文の代わりに使用されることがよくあります。 例 スイッチの新しい書き方 var message = c switch{ Fruits.Red => "The Fruits is red", Fruits.Gr
-
C#8.0でインデクサーを使用するにはどうすればよいですか?
^演算子-これは、終了演算子からのインデックスとして知られています。 シーケンスまたはコレクションの終わりを基準にしたインデックスを返します。 これは、以前の方法と比較して、最終要素を見つけるための最もコンパクトで簡単な方法です。 company.listEmployees [^ 2] .Name=新しい構文を使用して従業員2の名前が変更されました; company.listEmployees [^ 5] .Name=新しい構文を使用して変更された従業員5の名前; company.listEmployees [^ 8] .Name=新しい構文を使用して従業員8の名前が変更されました;
-
C#8.0の非同期ストリームとは何ですか?
C#8.0では、データのストリーミングソースをモデル化する非同期ストリームが導入されています。データストリームは、多くの場合、要素を非同期で取得または生成します。 シーケンスを生成するコードは、yield returnを使用して、async修飾子で宣言されたメソッドの要素を返すことができるようになりました。 awaitforeachループを使用して非同期ストリームを消費できます。 以下の構文 static IEnumerable<string> Message(){ yield return "Hello!"; &n
-
C#ASP.NET WebAPIを使用する利点は何ですか?
WEB APIは、よりシンプルで軽量なサービスに適しています。 WEB APIは、XMLを含む任意のテキスト形式を使用でき、WCFよりも高速です。 これは、すべてのcrud操作でGET、POST、PUT、DELETEなどの標準のHTTP動詞を使用してHTTPが機能するのと同じように機能します。 ルーティングの完全なサポート MediaTypeFormatterを使用してJsonおよびXML形式で生成された応答。 IISでホストする機能と、IISの外部でセルフホストする機能があります。 モデルのバインドと検証をサポートします。 ODATAのサポート。 デ
-
web.configureファイルでC#ASP.NET WebAPIを構成するにはどうすればよいですか?
いいえ、web.configureファイルでWEBAPIを構成することはできません。 Web APIは、コードベースの構成をサポートしています。 web.configfileでは構成できません。 WEB APIを構成して、WebApihostingInfrastructureやなどのコンポーネントの動作をカスタマイズできます。 ルート フォーマッター フィルタ 依存関係リゾルバー メッセージハンドラー ParameterBindingRules プロパティ サービス ルート-コントローラーのパブリックメソッドは、アクションメソッドまた
-
C#ASP.NET WebAPIのパラメーターバインディングとは何ですか?
バインディングは、WebAPIがcontrolleractionメソッドを呼び出すときにパラメーターの値を設定するプロセスです。 さまざまなタイプのパラメーターを使用するWebAPIメソッドと、バインディングプロセスをカスタマイズする方法。 パラメータがint、bool、doubleなどの単純な型の場合、Web APIはURIから(ルートデータまたはクエリ文字列のいずれかから)値を取得しようとします パラメータがCustomer、Employeeなどの複合型の場合、WebAPIFrameworkはリクエスト本文から値を取得しようとします。 [FromBody]属性と[FromUri]属
-
Asp.Net webAPI C#に組み込まれているメッセージハンドラーとは何ですか?
メッセージハンドラは、HTTPリクエストを受信し、HTTPレスポンスを返すクラスです。メッセージハンドラーは、抽象HttpMessageHandlerクラスから派生します。メッセージハンドラーは、着信要求がHttpControllerDispatcherに到達する前に、処理、編集、または拒否する機会を提供します。 メッセージハンドラは、リクエスト処理パイプラインのかなり早い段階で実行されるため、WebAPIで横断的関心事を実装するのに最適な場所です。 MessageHandlerは、パイプラインを介したHTTPリクエストとレスポンスのプロセスの隣にあるクラスのチェーン(システムで定義されてい
-
C#で文字列から数値を見つけて抽出する方法は?
正規表現は、入力テキストと照合できるパターンです。.NetFrameworkは、そのような照合を可能にする正規表現エンジンを提供します。パターンは、1つ以上の文字リテラル、演算子、または構成要素で構成されます。 RegExで使用される基本的なパターンメタ文字は次のとおりです- * = zero or more ? = zero or one ^ = not [] = range ^記号は、条件なしを指定するために使用されます。 0〜9、a-z、A-Zなどの範囲値を指定する場合は[]括弧 Char.IsDigit()の使用 例 using System; namespace DemoAp
-
ASP .Net MVC C#でViewBagを使用するにはどうすればよいですか?
ViewBagは、C#4.0で導入された動的機能を使用します。これにより、オブジェクトにプロパティを動的に追加できます。内部的には、Controllerクラスの基本クラスであるControllerBaseクラスの動的タイププロパティです。 ViewBagは、コントローラーからビューにデータを転送するだけで、その逆はありません。リダイレクトが発生した場合、ViewBag値はnullになります。 ViewBagは動的に値を設定および取得でき、厳密に型指定されたものに変換せずに任意の数のフィールドを追加できます。 ViewBagへのデータの保存- ViewBag.Counties = coun
-
ASP .Net MVC C#でのNonActionAttributeの重要性は何ですか?
NonAction 属性は、コントローラーにパブリックメソッドが必要であるが、アクションメソッドとして扱いたくない場合に使用されます。アクションメソッドは、URLを使用して呼び出すことができるコントローラーのパブリックメソッドです。したがって、デフォルトでは、コントローラーにパブリックメソッドがある場合、URLリクエストを使用して呼び出すことができます。コントローラのパブリックメソッドへのアクセスを制限するには、NonAction属性を使用できます。 ここで、HomeControllerに2つのパブリックメソッドMyMethod1とMyMethod2があると考えてみましょう。 。 コントロ
-
ASP .Net MVCC#に存在するデフォルトルートの3つのセグメントは何ですか?
ASP.Net MVCルーティングモジュールは、着信ブラウザー要求を特定のMVCコントローラーアクションにマッピングする役割を果たします。 ASP.NET MVCアプリケーションが起動すると、アプリケーションは1つ以上のパターンをフレームワークのルートテーブルに登録して、それらのパターンに一致する要求を処理するようにルーティングエンジンに指示します。ルーティングエンジンは、実行時にリクエストを受信すると、そのリクエストのURLを登録されているURLパターンと照合し、パターン一致に従って応答を返します。 ASP.NETは、各URLを物理ファイルにマッピングする必要をなくすためにルーティングを導
-
ASP .Net MVC C#でフィルターを適用できるレベルは何ですか?
ASP .Net MVCアプリケーションでは、フィルターは3つのレベルで適用できます。 アクションメソッドレベル コントローラーレベル グローバルレベル アクションメソッドレベル アクションメソッドレベルで適用されるフィルターは、特にそのアクションメソッドでのみ機能します。 using System.Web.Mvc; namespace DemoMvcApplication.Controllers{ public class HomeController : Controller{ [Authorize] //Actio
-
ASP .Net MVC C#でのChildActionOnly属性の使用は何ですか?
子アクションには、子リクエストによってのみアクセスできます。 URLリクエストには応答しません。試行すると、次のようなランタイムエラーがスローされます-子アクションは子リクエストによってのみアクセス可能です。子アクションメソッドは、Action()およびRenderAction()htmlヘルパーを使用してビューから子リクエストを作成することで呼び出すことができます。 子アクションメソッドは、Action()またはRenderAction()ヘルパーを使用してNonActionmethodsを呼び出すことができないという点で、NonActionメソッドとは異なります。 以下は、URLを使用
-
Asp.Net webAPI C#のコンテンツネゴシエーションとは何ですか?
コンテンツネゴシエーションは、複数の表現が利用可能な場合に、特定の応答に最適な表現を選択するプロセスです。つまり、リクエストのAcceptヘッダー値に応じて、サーバーはレスポンスを送信します。 HTTPでのコンテンツネゴシエーションの主なメカニズムは、これらのリクエストヘッダーです- 受け入れる −「application / json」、「application / xml」などの応答に使用できるメディアタイプ、または「application / vnd.example+xml」などのカスタムメディアタイプ Accept-Charset −UTF-8やISO8859-1など、どの文字セ
-
C#Asp.Net webAPIでのAuthorizeAttributeの使用は何ですか?
承認とは、認証されたユーザーが特定のリソース(Web APIリソース)でアクションを実行できるかどうかを決定するプロセスです。たとえば、データを取得してデータを投稿する権限を持つことは、承認の一部です。承認プロセスは、コントローラーアクションメソッドを実行する前に実行されます。これにより、そのリソースへのアクセスを許可するかどうかを柔軟に決定できます。 ASP.NETでは、Web APIの承認は、コントローラーアクションメソッドが実行される前に実行される承認フィルターを使用して実装されます。 Web APIは、組み込みの承認フィルターAuthorizeAttributeを提供します。このフィ
-
C#を使用して他のアプリケーションからAsp.Net WebAPIエンドポイントを使用するにはどうすればよいですか?
HttpClient classは、URLからHTTP要求/応答を送受信するための基本クラスを提供します。これは、.NETFrameworkでサポートされている非同期機能です。 HttpClientは、複数の同時リクエストを処理できます。これは、HttpWebRequestとHttpWebResponseの上のレイヤーです。 HttpClientを使用するすべてのメソッドは非同期です。 HttpClientはSystem.Net.Http名前空間で利用できます。 StudentControllerとそれぞれのアクションメソッドを持つWebAPIアプリケーションを作成しましょう。 学生モデル