この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 3984|答える: 2

[出典] Visual StudioでのC#インタラクティブウィンドウを用いたコード実行

[リンクをコピー]
2024年3月9日 12:06:50に投稿 | | | |
要件:日常的な開発では、C#コードをテストしたり、小さなデモを書いたりする必要があり、毎回新しいコンソールアプリケーションを作成するのは面倒かもしれません。

まず、「C# Interactive」を開き、VS 2022を実行して「コードなしで続ける」を選択し、「表示」>「その他のウィンドウ」を選びます。以下のように示されています:



Environment.Versionのコードを使い、現在のランタイムのバージョンを出力します。

.NET Core 3.xおよび.NET 5+では、Environment.Versionプロパティが.NETランタイムのバージョン番号を返します。 .NET Frameworkのバージョン4、4.5、4.5.1、4.5.2では、Environment.Versionプロパティは4.0.30319.xxxxxの文字列表現を持つVersionオブジェクトを返します。 .NET Framework 4.6以降、および.NET Core 3.0以前のバージョンでは、4.0.30319.42000の形で表れています。
参考:ハイパーリンクのログインが見えます。

#help のヘルプは以下の通りです:

キーボードショートカット:
  完了と表示された場合、Enterは現在のコミットを評価します。 そうでなければ、新しい行を挿入してください。
  Ctrl-Enterは現在のコミット内で現在のコミットを評価します。
                       前のコミット内で、前のコミットを現在のコミットに追加します。
  シフト・エンターは新しい行を挿入します。
  Escapeは現在のコミットをクリアします。
  Alt-UpArrowは現在のコミットを前のコミットに置き換えます。
  Alt-DownArrowは、現在のコミットを(以前に逆にナビゲートした後の)次のコミットに置き換えます。
  Ctrl-Alt-UpArrowは、現在のコミットを同じテキストで始まる前のコミットに置き換えます。
  Ctrl-Alt-DownArrowは、現在のコミットを同じテキストで始まる次のコミットに置き換えます(以前に逆にナビゲートした後のものです)。
  Ctrl-K、Ctrl-Enterで選択したコンテンツをインタラクティブバッファの最後に貼り付け、挿入ポイントを入力の最後に配置します。
  Ctrl-E、Ctrl-Enterで選択したコンテンツを貼り付け、インタラクティブバッファの保留中の入力の前に実行します。
  Ctrl-Aは最初の押下でカーソルを含むコミットを選択し、2回目の押下でウィンドウ内のすべてのテキストを選択します。
REPLコマンド:
  #cls、#clear はエディターウィンドウ内のコンテンツをクリアし、履歴や実行コンテキストはそのまま維持します。
  #help 指定されたコマンドのヘルプ、または指定されていない場合は利用可能なすべてのコマンドやキー割り当てのヘルプを表示します。
  #reset 実行環境を初期状態にリセットし、ホストプロセスの実行時間を切り替えることで履歴を保持します。
スクリプトの指示:
  #r 特定のアセンブリとそのすべての依存関係へのメタデータ参照(例えば「myLib.dll」#r を追加します。
  #load 指定されたスクリプトファイルを読み込み、例:「myScript.csx」#load 実行します。
使う「Ctrl-Enter」キーでコミットするコードを実行し、「Alt-Up Arrow Symbol」で過去のコードを入力する選択が行われます

簡単なC#コードを実行してテストしてください:



他のdll依存関係を参照すると、オブジェクトをシリアライズしたい場合は、Newtonsoft.Jsonライブラリを使ってdllを #r コマンドで読み込む必要があるかもしれません。コードは以下の通りです:



同時に、次回の実行を簡単にするために.csxファイルとして保存することも可能です。ファイル内容は以下の通りです:

実行効果は以下の通りです:



(終わり)





先の:SQL Serverは拡張イベントを使ってデッドロック問題を追跡します
次に:.NET/C# Roslynコンパイラプラットフォーム
 地主| 2024年3月9日 12:13:42に投稿 |
Visual Studio CodeプラグインはPolyglot Notebooks(旧.NET Interactive Notebooks)を追加し、C#コードも実行します。

.NET インタラクティブのアドレス:https://github.com/dotnet/interactive
.NETアドレスを試してみてください:https://github.com/dotnet/try
 地主| 2024年3月9日 13:52:41に投稿 |
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com