Visual Studio 2019で.NET Coreプロジェクトを自動的に再読み込みする方法


11

Angular with NodeまたはNPMと同じASP.NET Core Project を自動的に再ロードしようとしています。

つまり、.NET Core Projectのコードを変更して保存します。そのときは、ブラウザーで自動的に効果を導き、ブラウザーでWebページを自動的に再読み込みします。


リロードとはどういう意味かは正確にはわかりませんが、通常、実行時にコードを変更することはできません。
Yasser Jarouf

@YasserJaroufは、私は、Visual Studio 2019での話ではないのです
AkashさんLimbani

ASP.NET Core Angularプロジェクトは既にクライアント側コードをリロードします-それら Angularだけでなく、same asAngularです。ASP.NET Coreは、APIと非SPAページを提供するために使用されます。
Panagiotis Kanavos

他の方法は、インストールnpmパッケージとASP.NET Coreプロジェクトを組み合わせるようなものですか?
Akash Limbani

回答:


5

dotnet時計はうまくいくと思います。さまざまなオプションがあるので、リンクからドキュメントを参照してください。

  1. Microsoft.DotNet.Watcher.Toolsをproject.jsonファイルのtoolsセクションに追加します
  2. dotnet復元を実行する
  3. dotnet watch runで実行する

しかし、これを使用して、Angularのように自動的にリロードすることはできません。ctrl + sを押した場合、その時点ではブラウザでアクションは機能していません。答えてくれてありがとう。
Akash Limbani

コマンドプロンプトを使用してアプリケーションを実行し、プロジェクトに監視の詳細を追加する必要があります。json
PrinceT

または、私の回答で提供した私の起動プロファイルを使用することもできます
。– GrowSing

はい、そうしました。このdotnet watch runコマンドを使用して確認します。
Akash Limbani

コンソールで変更を確認できます。実行しようとすると、何かが表示されますか?
PrinceT

3

この要件によると、Angularアプリケーションと同じように.netコアアプリケーションを実行し、ページやコンテンツを自動的に読み込んで、ビルドや手動で更新する必要はありません。

ASP.NETコアプロジェクトでは自動リロードは不可能であるというASP.NET開発会社の上級リソースとして働いている.net開発者として、7年以上の経験を積みました。しかし、成功しました。このソリューションでは、ソースファイルを監視し、ファイルが変更された場合、開始したアプリケーションをシャットダウンし、プロジェクトを再ビルドして公開し、アプリケーションを再起動するドットネットウォッチを使用しています。アプリケーションで行った変更を取得するためにブラウザで手動でページを更新します。プロジェクトをビルドまたは開始する必要はありません。

asp.netウォッチを使用するための手順:

1)Create.Netコアアプリケーション。

2)Webプロジェクトのフォルダーでコマンドウィンドウを開きます

3)タイプ dotnet watch run

4)ブラウザを開き、APIまたはページに移動します

5)ソースコードを変更する

6)ファイルを保存します

7)ブラウザに戻り、手動で更新します

8)変更が反映されているはずです


Visual Studio 2019で行う方法
Akash Limbani

2

使用できますdotnet watch。Viz。文書

VSで簡単に実行できるように、カスタムランチプロファイルを作成しました。

"Watch": {
  "executablePath": "dotnet.exe",
  "workingDirectory": "$(ProjectDir)",
  "commandLineArgs": "watch run",
  "launchBrowser": false,
  "launchUrl": "http://localhost:5000/",
  "environmentVariables": {
    "ASPNETCORE_ENVIRONMENT": "Development"
  }
}

これを使用すると、Angularのようなブラウザで自動的に再読み込みされません。
Akash Limbani

Angularプロジェクトを実行できますか?
Akash Limbani


2

このコマンドをプロジェクトコンソールで実行する

dotnet watch run

ビジュアルスタジオコードの同じ作品


1

このオプションに進む前に、トリプルを考える必要があります。(1)リソースを消費します。変更されたプロジェクトと、場合によってはソリューション全体の事前構築として、自動ビルドが必要になるため。(多くのプロジェクトで構成された中規模から巨大なAsp.netソリューションを想像してください。変更が実行されるたびにビルドされます!!プログラミングに残っている時間はどれくらいですか??? !!)(2)ご存知のとおり、ページのリロードは多くのビルドが成功した後の最初の起動の時間!! ...したがって、このオプションから得たい時間は、特にCLRベースのプログラミング言語(.NET Coreなど)で無駄になります。そして最後に、(3)プロジェクトは、より良い自動化プロセスのためにビューに自動的に注入できるテストサンプルを開発する必要があると予想されます。

代わりに、ソリューションを単体テストしてみてください。その後、次の変更は表面的で発生が少ないと予想されます。

私の提案に同意できない場合on-buildは、on-save-changesイベントではなくターゲットWebページをリロードするVisual Studio拡張機能を開発することをお勧めします。次に、Ctrl + b仕事をします!

どこから始めれば?

私は、VS UIの外で特定の生成されたファイルを自動的にロードするためにフォルダーを監視するVSIXを開発しました。あなたがプロジェクトのファイル管理についての考えを持っているソースコードを確認してください。それはEnvDTE APIで回転し、中を見てください、このます。コード。

また、ここからソースプロジェクトを確認してください

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.