C# でのネットワーク プログラミング
このチュートリアルでは、.NET フレームワークによって提供される System.NET
ライブラリを使用して、C# でネットワーク アプリケーションを作成する方法を示します。
C#
でのネットワークプログラミング
.NET フレームワークの System.NET
ライブラリは、C# でのネットワーク プログラミングのためのシンプルなフレームワークを提供します。
ネットワーク アプリケーションには 2 種類あります。 クライアントとサーバー。 クライアント アプリケーションは、サーバー アプリケーションにネットワーク経由でタスクを実行するよう要求し、サーバー アプリケーションはそのタスクを実行して、結果をクライアント アプリケーションに返します。
C# で System.NET
名前空間 を使用して、このクライアント サーバー アプリケーションをプログラムできます。 以下のURI
の学習から始めましょう。
ユニフォーム リソース インジケーター
ネットワーキングでは、クライアントは均一なリソース インジケータまたは URI
を使用して、必要なリソースのタイプを指定します。 URI
はさまざまなフラグメントで構成されています。
スキーム識別子
- リクエストとレスポンスの通信プロトコルを識別します。サーバー識別子
- DNS ホスト名または TCP アドレスは、インターネット上のサーバーを一意に識別します。パス識別子
- サーバー上で要求した情報を見つけます。 クライアントからサーバーに情報を渡すオプションのクエリ文字列。
System.NET
名前空間の URI
クラスは、C# で統一リソース識別子を作成します。 次のコード ブロックは、C# で URI
クラスを使用する方法を示しています。
var resource = "http://webcode.me:80/";
var path = new Uri(resource);
Console.WriteLine("Port : " + path.Port);
Console.WriteLine("Hostname : " + path.Host);
Console.WriteLine("Path : " + path.LocalPath);
Console.WriteLine("Scheme : " + path.Scheme);
出力:
Port: 80
Hostname: webcode.me
Path: /
Scheme: http
上記のコードは string
を受け取り、その string
を URI
に変換してから、新しく作成された URI
のさまざまなフラグメントを出力します。 さらに、この URI
クラスは、いくつかの検証を自動的に実行して、URI
が正しい形式であることを確認します。
これらの検証は裏目に出て、URI
全体を壊してしまうことがあります。 UriCreationOptions.DangerousDisablePathAndQueryCanonicalization
を true
に設定することで、この効果を無効にすることもできます。
検証が無効になるため、Uri.Fragments
プロパティを使用できません。
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn