Visual Studio ドキュメントの新着情報
Visual Studio ドキュメントの新着情報へようこそ。次のセクションでは、過去 3 か月間の新しいコンテンツと更新されたコンテンツについての詳細を示します。
2025 年 1 月
コード品質
更新された記事
- コード メトリック - 保守容易性インデックスの範囲と 意味 - コード品質の保守性インデックスに関連する色分けの説明を追加する
デバッガー
新しい記事
- C++ の NatVis カスタム組み込み関数を実装する
- IDiaDataSourceEx2::findNamedStreams
- IDiaDataSourceEx2
- IDiaEnumNamedStreams::Clone
- IDiaEnumNamedStreams::get_Count
- IDiaEnumNamedStreams::get__NewEnum
- IDiaEnumNamedStreams::Next
- IDiaEnumNamedStreams::Reset
- IDiaEnumNamedStreams::Skip
- IDiaEnumNamedStreams
更新された記事
- Visual Studio で GitHub Copilot を使ってアプリをデバッグする
- Copilot を使用したデバッグの更新
- Copilot デバッグ機能、機能の一覧、およびいくつかのリファクタリングの詳細を追加する
- Visual Studio デバッガー を使用して実行中のプロセスにアタッチする - ゾーン ピボットを使用したプロセスへのアタッチに関する記事の言語構成を追加する
- Visual Studio の Just-In-Time デバッガーを使用したデバッグの - JIT デバッガーを無効にする手順を明確にする
- Windows Arm32 .NET デバッグ の削除に適応する - UWP の展開手順で Arm32 デバッガーのドキュメントを更新する
- 最初に Visual Studio デバッガーの を確認する - Copilot デバッグ機能、機能の一覧、およびいくつかのリファクタリングの詳細を追加する
- 編集と継続の構成 (C#、VB、C++) - ホットリロード設定の更新
- Visual Studio で ASP.NET または ASP.NET Core アプリをデバッグする
- C# と C++ のリモート デバッグ シナリオを明確にする手順とリンクを追加する
- Copilot マルチスレッド デバッグの更新と、ASP.NET Core 起動プロファイルの既定の設定に関連する更新プログラム
- リモートデバッグ
- C# と C++ のリモート デバッグ シナリオを明確にする手順とリンクを追加する
- Copilot マルチスレッド デバッグの更新と、ASP.NET Core 起動プロファイルの既定の設定に関連する更新プログラム
- [並列スタック] ウィンドウでスレッドとタスクを表示する (C#、Visual Basic、C++) - Copilot マルチスレッド デバッグの更新と、ASP.NET Core 起動プロファイルの既定の設定に関連する更新プログラム
- 適切な種類のブレークポイント を使用する - プロファイリング記事に言語とランタイム のピボットを追加する
- Natvis フレームワーク を使用してデバッガーで C++ オブジェクトのカスタム ビューを作成する - NatVis 組み込み拡張を使用するための記事ドキュメント ガイドラインを追加する
- IDiaDataSource - ドキュメント
IDiaEnumNamedStreams
および関連するインターフェイスと API - IDiaDataSourceEx - ドキュメント
IDiaEnumNamedStreams
および関連するインターフェイスと API - インターフェイス (デバッグ インターフェイス アクセス SDK) - ドキュメント
IDiaEnumNamedStreams
および関連するインターフェイスと API
デザイナー
更新された記事
- モデル エディター - 3D グラフィックス用 MeshContentTask のサポート変更に関するメモを追加する
- ゲームまたはアプリで 3D アセットを使用する - 3D グラフィックスの MeshContentTask のサポート変更に関するメモを追加する
機能拡張
新しい記事
- Visual Studio エディターを新しい CodeLens で拡張する
- エディター でテキストを変更する
- 新しい余白を使用した Visual Studio エディターの拡張
- エディター でテキストを操作する
更新された記事
- エディターの拡張機能の概念 - エディター ドキュメントの初期リファクタリング。
- Visual Studio エディターの拡張 - エディター ドキュメントの初期リファクタリング。
作業開始
更新された記事
- コード エディターの の使用について - 確認と更新
- チュートリアル: Visual Studio で単純な C# コンソール アプリを作成する (パート 1/2) - レビューと更新
IDE
新しい記事
更新された記事
- Visual Studio の GitHub Copilot Chat エクスペリエンスとは - Copilot デバッグ機能、機能の一覧、およびいくつかのリファクタリングの詳細を追加する
- Visual Studio でテキストを検索して置換する
- [ファイル内の置換] オプションの詳細を説明する
- 確認と更新
- Visual Studio でファイルを比較する - 通常の方法でターゲット ファイルを編集できることを説明するテキストを追加する
- Visual Studio IDE のツアー - 更新頻度の更新
- Visual Studio で GitHub Copilot Chat を無料で使用する
- チャットのキーボード ショートカットを追加する
- Copilot 無料更新プログラム
- チュートリアル: Visual Basic を使用して WinForms アプリを作成する - レビューと更新
- Visual Studio での IntelliSense - 確認と更新
- チュートリアル: C# を使用して Visual Studio で Windows フォーム アプリを作成する - 確認と更新
- エンコード でファイルを保存して開く - 既定のファイル エンコードを変更するためのコンテンツを追加する
- Visual Studio でフォント、色、テーマを変更する - アプリの UI 要素のフォントに関する情報を追加する
- Visual Studio でコンパイルしてビルドする - 確認と更新
- [ファイルで検索] コマンド - Visual Studio 2022 の [ファイル内の検索/置換] オプションを更新する
- [ファイルで置換] コマンド - Visual Studio 2022 の [ファイル内の検索/置換] オプションを更新する
インストール
更新された記事
- Visual Studio インストール のコマンド ライン パラメーターの例 - 非対話型インストールでの UUF verbatim の情報の追加
JavaScript
更新された記事
- チュートリアル: Visual Studio で Angular を使用して ASP.NET Core アプリを作成する
- JSTS テンプレートの最終的なアプリの状態を示すコンテンツを追加する
- チュートリアル: Visual Studio で React を使用して ASP.NET Core アプリを作成する - JSTS テンプレートの最終的なアプリの状態を示すコンテンツを追加する
- チュートリアル: Visual Studio で Vue を使用して ASP.NET Core アプリを作成する - JSTS テンプレートの最終的なアプリの状態を示すコンテンツを追加する
モデリング
更新された記事
- アーキテクチャ の分析とモデル化 - analyze-and-model-your-architecture.md の更新
MSBuild
更新された記事
- XmlPoke タスク - プレフィックスがない場合の処理について記載する
- MSBuild エラー メッセージの詳細を追加します。
- MSB3103: Resx ファイルの が無効です
- MSB3202
- MSB3245
- MSB3248 診断コード
- MSB3249 診断コード
- MSB4066 診断コード
- MSB4186 の診断コード
- MSB4211 の診断コード
- MSB4248 診断コード
- 一般的な MSBuild プロジェクト項目の - 'CopyToOutputDirectory' の 'IfDifferent' に対する MSBuild のサポートを文書化する
プロファイル
更新された記事
- CPU Insights を使用して待機時間の長い診断を行う - Copilot のデバッグ機能、機能の一覧、およびいくつかのリファクタリングの詳細を追加する
- リリース ビルド (C#、Visual Basic、C++、F#) でのメモリ使用量の分析
- プロファイリング記事に言語ピボットとランタイム ピボットを追加する
- ルート プロファイリングに関する記事、SEO 編集へのホット パスを更新して明確にする
- デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
- プロファイリング ツールの初見 (C#、Visual Basic、C++、F#)
- プロファイリング記事に言語ピボットとランタイム ピボットを追加する
- デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
- メモリ使用量ツールの でルートへのホット パスを分析する - ルート プロファイルに関する記事へのホット パスの更新と明確化、SEO 編集
- Visual Studio (C#、Visual Basic、C++、F#) でメモリ使用量を測定
- ルート プロファイリングに関する記事、SEO 編集へのホット パスを更新して明確にする
- デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
- Visual Studio でメモリ分析ツールを選択する (C#、Visual Basic、C++、F#) - デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
- リソース消費量と UI スレッド アクティビティ (XAML) を分析する - デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
- リリース ビルドまたはデバッグ ビルドでプロファイリング ツールを実行する (C#、Visual Basic、C++、F#) - デバッグ ビルドまたはリリース ビルドでプロファイリング ツールを実行するためのシナリオを明確にする
テスト
更新された記事
- Microsoft.CodeCoverage.Console ツール - Microsoft.CodeCoverage.Console の手順とシナリオを明確にする
バージョン管理
更新された記事
- Visual Studio で Git コミットを行う
- 新機能の追加: カスタム コミット メッセージ形式
- 新機能: Git コード レビュー
- Visual Studio で pull request を作成する
- PR コメント機能の追加
- 確認と更新
- Visual Studio で Git リポジトリを管理する - Revert が無効になるタイミングに関する情報を追加する
コミュニティ貢献者
上記の期間中、Visual Studio ドキュメントへのご協力をいただいた方々です。 ご協力に感謝いたします。 新機能ランディング ページの「参加する」にあるリンクに従って投稿する方法について説明します。
- changeworld - 竹林 隆
- Rageking8 -
- cdpark - CD Park
- PhilKang0704 - Phil
- stevenwdv -
2024 年 12 月
Azure
更新された記事
- Azure サブスクリプションを使用してサインインする
- チェーンされた資格情報に関する情報を追加する
- 個人用アカウントと職場アカウントの比較に関する注を追加する
コード品質
更新された記事
- コード メトリクス - サイクロマティック複雑度 - 生産性ガイド更新
- Visual Studio Code 分析のドキュメント (Windows) - 生産性ガイドを更新する
コンテナー
更新された記事
- Docker Compose のビルド プロパティ
- プロパティの追加と表の変更
- DependencyAwareStart プロパティの追加
- チュートリアル - Docker Compose を使用したマルチコンテナー アプリの作成 - 17.13 DependencyAwareStart シナリオの追加
- Visual Studio を使用して Azure App Service に ASP.NET Core コンテナーをデプロイする - Azure Container Apps のリンクを追加
- Docker コンテナー開発ツールのドキュメント - Azure Container Apps のリンクを追加
- Visual Studio Container Tools for Docker - Azure Container Apps のリンクを追加
- Compose サービスのサブセットを起動する - 確認と更新
- クイック スタート: Visual Studio での Docker - コンテナー ツールの概要の確認と更新
データ ツール
更新された記事
- .NET Framework アプリケーションの Access データベースに接続する - Access データベースの記事で古い codegen の一覧を削除
- Visual Studio の LINQ to SQL ツール - LINQ to SQL の記事の確認と更新
- Visual Studio での Entity Framework ツール - Entity Framework の記事のレビューと更新
- Visual Studio でデータを操作する - VS でのデータへのアクセスの確認と更新
デバッガー
新しい記事
更新された記事
- Visual Studio での C# または Visual Basic プロジェクトのリモート デバッグ - C# のリモート デバッグに関する記事を更新する#
- Visual Studio で GitHub Copilot を使ってアプリをデバッグする
- Copilot Free の更新
- Just-In-Time デバッガーを無効にする - ASP.NET アプリケーションを無効にするためのリンクと詳細情報を追加する
- チュートリアル: Visual Studio での C++ コードのデバッグ - 確認と更新
- Visual Studio デバッガーでスレッドを表示する (C#、Visual Basic、C++) - 確認と更新
- 適切な種類のブレークポイントを使用する - ブレークポイントに関する記事に言語ピボットを追加
- Visual Studio でのホット リロードを使った実行中のコードの記述とデバッグ (C#、Visual Basic、C++) - Vitest 用の JSTS (JavaScript と TypeScript) の単体テストの記事を更新
- 入門者向けのデバッグ - ホット リロードの変更に関する初心者向けガイドを更新
- Visual Studio での C++ プロジェクトのリモート デバッグ - C++ のリモート デバッグに関する記事を更新
- Visual Studio デバッガーでのブレークポイントの概要 - Node.js のデバッグに関する手順の明確化
配置
更新された記事
- ClickOnce 配置とセキュリティ - ClickOnce の概要を更新
- IIS から発行の設定を取得して Visual Studio にインポートする - IIS
.publishsetting
チュートリアルの日付の確認と更新 - フォルダー、IIS、Azure、または別の場所にアプリを配置する - WebJobs オプションの範囲を追加
機能拡張
更新された記事
- VSIX パッケージ用の Sign CLI リファレンス - 新しいオプション (
-i
または--interactive
) を追加
作業開始
更新された記事
- チュートリアル: リポジトリからプロジェクトを開く
- ヘルプに addl リンクを追加する
- 確認と更新
- Visual Studio で C# プログラムまたはアプリを実行する - "C# プログラムの実行" に関するピア フィードバックを組み込む
- プロジェクトとソリューションの概要 - 確認と更新
- チュートリアル: シンプルな Visual Basic コンソール アプリを作成する - 確認と更新
- チュートリアル: C# で WPF アプリケーションを作成する - 確認と更新
IDE
新しい記事
更新された記事
- CodeLens によるコード変更とその他の履歴の検索 - 確認と更新
- エディターでテキストの大文字と小文字を変更する - キーボード ショートカットへのリンクを追加する
- Copilot Free の更新:
- .NET プロジェクト デザイナー - .NET プロジェクト デザイナーを使用するようになった Visual Basic に関する更新
- .NET プロジェクト デザイナーとは - .NET プロジェクト デザイナーを使用するようになった Visual Basic に関する更新
- ビルド イベントを指定する (Visual Basic) - Visual Studio 2022 の更新
- フレームワーク対象設定機能の概要 - 複数のフレームワークをターゲットにする
- 開発者コミュニティのデータのプライバシー - 確認と更新
- エンコードおよび行末の処理 - 確認と更新
- Visual Studio の生産性に関するガイド
- 生産性ガイドを編集する
- 生産性ガイドを更新する
- C# 開発者のための Visual Studio 生産性ガイド - 生産性ガイドを更新
- テンプレート内のパラメーターを置き換える - 確認と更新、および既存のテンプレートが必要であることを明確にする
インストール
更新された記事
- Visual Studio でインストールの場所を選択する - 確認と更新
- ファイアウォールまたはプロキシ サーバーの内側に Visual Studio および Azure Services をインストールして使用する - 確認と更新
JavaScript
更新された記事
- チュートリアル: Visual Studio で Node.js と Express のアプリを作成する - 確認と更新
- TypeScript コードのコンパイル (Node.js) - npm を使用した TypeScript のコンパイルと JSTS のリンティングに関する記事の更新
- TypeScript コードのコンパイル (ASP.NET Core) - npm を使用した TypeScript のコンパイルと JSTS のリンティングに関する記事の更新
- Visual Studio での JavaScript のリンティング - npm を使用した TypeScript のコンパイルと JSTS のリンティングに関する記事の更新
- Visual Studio での JavaScript と TypeScript の単体テスト - Vitest 用の JSTS の単体テストの記事を更新
- Angular プロジェクトを作成する - React、Vue、Angular プロジェクトのプロジェクト設定の構成に関する情報を更新する
- React プロジェクトを作成する - React、Vue、Angular プロジェクトのプロジェクト設定の構成に関する情報を更新する
- Vue.js プロジェクトを作成する - React、Vue、Angular プロジェクトのプロジェクト設定の構成に関する情報を更新する
MSBuild
更新された記事
- 複数のフレームワーク バージョンとプラットフォームをターゲットにする - ターゲット フレームワークの注を変更する
- MSBuild 17 の新機能 - MSBuild の新機能の確認と更新
- MSBuild の既知の項目メタデータ - 複数のテーブルがあるという示唆を削除する
- MSBuild プロジェクトの共通項目 - Culture/WithCulture メタデータの文書化
- GenerateResource タスク - Culture/WithCulture メタデータの文書化
テスト
更新された記事
- コード カバレッジ分析のカスタマイズ - コード カバレッジ ドキュメントを更新する
- Microsoft.CodeCoverage.Console ツール - コード カバレッジ ドキュメントを更新する
- コード カバレッジを使用してテストされているコードの量を確認する - コード カバレッジ ドキュメントを更新する
- テスト エクスプローラーを使用して単体テストのデバッグと分析を行う - 確認と更新
- テスト エクスプローラーを使用して単体テストを実行する
- 確認と更新
- テスト プロセスのアーキテクチャを構成するための単体テスト コンテンツを更新する
- ARM64 で単体テストを実行するための動作を文書化する
- Visual Studio テスト エクスプローラーに関する FAQ - 確認と更新
- Visual Studio で C/C++ 用の単体テストを作成する - VS2022 のイメージを含む、確認と更新。
- 単体テストのプロセス アーキテクチャを構成する - テスト プロセスのアーキテクチャを構成するための単体テスト コンテンツを更新する
- チュートリアル: マネージド コードの単体テストを作成し、実行する - テスト プロセスのアーキテクチャを構成するための単体テスト コンテンツを更新する
コミュニティ貢献者
上記の期間中、Visual Studio ドキュメントへのご協力をいただいた方々です。 ご協力に感謝いたします。 新機能ランディング ページの「参加する」にあるリンクに従って投稿する方法について説明します。
- mkyman - ChrisYoung
2024 年 11 月
Azure
更新された記事
- Azure サブスクリプションを使用してサインインする - テナントのフィルター処理へのリンク
デバッガー
新しい記事
- Visual Studio デバッガーでブレークポイントを始めましょう
- IDiaStackWalkHelper::addressForVA
- IDiaStackWalkHelper::getFunctionFragmentsForVA
- IDiaStackWalkHelper::getNumberOfFunctionFragmentsForVA
更新された記事
- 適切な種類のブレークポイントを使用する
- 新しいユーザー向けにブレークポイントに関する記事へのリンクを追加する
- ブレークポイントの記事をリファクタリングし、レビューのフィードバックを組み込む
- ブレークポイント グループのエクスポートとインポートに関する情報を追加する
- よくある質問 - デバッガー機能の発見 - ブレークポイントの記事のリファクタリングとレビューのフィードバックを組み込む
- コード エディターのデータ ヒントを使用して変数の値を表示および変更する - ブレークポイントの記事をリファクタリングし、レビューのフィードバックを組み込む
- Docker コンテナー上で実行されているプロセスにアタッチする - WSL のシナリオで Docker のプロセスにアタッチの更新
- Visual Studio デバッガーで [メモリ] ウィンドウを使用する (C#、C++、Visual Basic、F#) - [メモリ] ウィンドウに関する記事を更新
- IDiaSymbol::get_value - IDiaSymbol::get_value の使用例を更新
- リモート IIS コンピューター上で ASP.NET をリモートデバッグする - リモートデバッグ IIS 記事にセキュリティ情報を追加する
- Visual StudioでのリモートIISコンピューター上のASP.NET Coreリモートデバッグ - リモートデバッグIISの記事にセキュリティ情報を追加
- Visual Studio を使用して、Azure VM 上の IIS で ASP.NET Core のリモートデバッグをで行う - リモートデバッグに関する IIS 記事にセキュリティ情報を追加する
- Visual Studio で GitHub Copilot を使ってアプリをデバッグする - クイック アクションの電球用の Copilot コンテンツを追加する
- デバッグ中にコマンド ライン引数を渡す (C++) - タイトルを修正する
- [自動変数] ウィンドウと [ローカル] ウィンドウで変数を確認する - 戻り値を表示するためにデバッガーのコンテンツを更新する
- Visual Studio デバッガーでのはじめに - 戻り値を表示するためにデバッガーのコンテンツを更新する
- Visual Studio の表形式ビジュアライザー - IEnumerable ビジュアライザー用の IntelliSense に関する情報の追加
- IDiaStackWalkHelper::pdataForVA - 3つの不足しているIDiaStackWalkHelper関数のドキュメントを追加する
- IDiaStackWalkHelper - 3 つの欠落している IDiaStackWalkHelper 関数のドキュメントを追加する
- SymTagEnum - 不適切なコードのエスケープにより壊れたリンクを修正する
配置
更新された記事
- Visual Studio での配置の概要 - 確認と更新
- Visual Studio Installer Projects 拡張機能と .NET - .NET インストーラー プロジェクトの記事を更新
機能拡張
更新された記事
- Visual Studio エディターの機能拡張を使用する
- 不足しているリンクと正しくないリンクを修正する
- VisualStudio.Extensibility に 17.12 ドキュメントを追加する
- VSIX パッケージ用の Sign CLI リファレンス - VSIX 署名: Sign CLI の例の修正
- 概要 - VisualStudio.Extensibility に 17.12 ドキュメントを追加する
- Visual Studio の出力ウィンドウに書き込む
- VisualStudio.Extensibility に 17.12 ドキュメントを追加する
- VS.Extensibilityの出力ウィンドウに関するドキュメントをバージョン17.12で更新しています。
IDE
更新された記事
- クラス デザイナーとは? - クラス デザイナーの手順を更新/修正する
- クイック アクション
- クイック アクションの電球用の Copilot コンテンツを追加する
- クイック アクションを呼び出すための手順を追加し、リファクタリングする
- Visual Studio 2022 の新機能 - 17.12 の更新
- CodeLens によるコード変更とその他の履歴の検索 - CodeLens のファイル レベル インジケーターを表示するための手順を追加する
- コードのスタイル設定 - コードのクリーンアップ手順を明確にする
- Visual Studio のプロジェクトとソリューションを作成、操作、削除する - Visual Studio インスタンスの機能間で新しいコピーを追加する
- Visual Studio で GitHub Copilot Chat のコンテキストを設定して、より良い回答を得る - 17.12 のガイド付きチャット エクスペリエンスを追加する
- Visual Studio 開発者コマンド プロンプトと開発者用 PowerShell - プロジェクトの場所の説明の更新
- Visual Studio の GitHub Copilot Chat エクスペリエンスとは - コード参照の更新を追加する
- ファイルとフォルダーの信頼設定の構成 - Visual Studio 17.12 機能 motw を追加する
- フォルダーを指定して検索 - リフレッシュおよび変更オプションに関する 17.12 の [フォルダーを指定して検索] の更新
- Visual Studio の検索を使用する - 新しいオールインワン検索機能に関する 17.12 の更新
- エラー一覧ウィンドウ - エラー一覧からのコピー: 17.12 の機能更新
- [フォントおよび色] ([オプション] ダイアログ ボックス - [環境]) - 折りたたみ可能なテキスト インジケーターを表に追加する
- Visual Studio のフォント、色、テーマを変更する - テーマ間でフォント設定を保持する
- 多要素認証 (MFA) が必要なアカウントで Visual Studio にサインインする - アクセス拒否テキストを追加する
JavaScript
更新された記事
- JavaScript Project System の MSBuild リファレンス - JS プロジェクトの ShouldRunBuildScript のコード例を更新する
- チュートリアル: Visual Studio での Angular を使用した ASP.NET Core アプリの作成 - ASP.NET Core と JSTS の発行出力に関連するリンクを追加する
- チュートリアル: Visual Studio での React を使用した ASP.NET Core アプリの作成
- ASP.NET Core と JSTS の発行出力に関連するリンクを追加する
- Vite CLI に関連する JS プロジェクト テンプレートの更新
- チュートリアル: Visual Studio での Vue を使用した ASP.NET Core アプリの作成
- ASP.NET Core と JSTS の発行出力に関連するリンクを追加する
- Vite CLI に関連する JS プロジェクト テンプレートの更新
MSBuild
更新された記事
プロファイル
更新された記事
- Visual Studio プロファイラーから dotnet カウンターを視覚化する - .NET Meters ヒストグラム ツールのコンテンツを追加
テスト
更新された記事
- テスト エクスプローラーを使用した単体テストのデバッグと分析 - Copilot を使用した単体テストのデバッグのコンテンツを追加
バージョン管理
更新された記事
- Visual Studio で Git コミットを行う - 名前変更の通知に関する注を追加する
- Visual Studio から Git リポジトリを作成する - 内部リポジトリの 17.12 サポートの更新
- Visual Studio での Git について - GitHub Permalink のコピー機能のドキュメントを追加する
コミュニティ貢献者
上記の期間中、Visual Studio ドキュメントへのご協力をいただいた方々です。 ご協力に感謝いたします。 新機能ランディング ページの「参加する」にあるリンクに従って投稿する方法について説明します。
- Michael-K-Stein - Michael Kuperfish Steinberg
- alexravenna - Alex Ravenna
- cathei - Maxwell Keonwoo Kang
- PhilKang0704 - Phil
- prasoonpankaj - Prasoon Pankaj
- saranshsaini - Saransh Saini