วิธีการโหลดโครงการ. NET Core ใน Visual Studio 2019 ใหม่โดยอัตโนมัติ


11

ฉันพยายามโหลดASP.NET Core Project อีกครั้งโดยอัตโนมัติเหมือนกับ Angular กับ Node หรือ NPM

หมายถึงฉันเปลี่ยนรหัสของ. NET Core Project และบันทึก เวลานั้นจะมีผลโดยตรงในเบราว์เซอร์และโหลดหน้าเว็บโดยอัตโนมัติในเบราว์เซอร์


ฉันไม่แน่ใจว่าคุณหมายถึงอะไรโดยการโหลดซ้ำ แต่โดยทั่วไปคุณไม่สามารถเปลี่ยนรหัสในขณะใช้งานได้
Yasser Jarouf

@ YasserJarouf ฉันไม่ได้พูดถึง In the visual studio 2019
Akash Limbani

โครงการ ASP.NET Core Angular โหลดรหัสฝั่งไคลเอ็นต์แล้ว - เป็นแบบ Angular ไม่ใช่แค่แบบsame asAngular ASP.NET Core ใช้เพื่อจัดทำ API และหน้าเว็บที่ไม่ใช่สปา
Panagiotis Kanavos

มีวิธีอื่นใดเช่นรวมแพคเกจติดตั้ง npm กับโครงการ ASP.NET Core หรือไม่
Akash Limbani

คำตอบ:


5

ฉันคิดว่านาฬิกา dotnet ควรใช้งานได้ ดูเอกสารจากลิงค์เนื่องจากมีตัวเลือกต่าง ๆ

  1. เพิ่ม Microsoft.DotNet.Watcher.Tools ไปยังส่วนเครื่องมือของไฟล์ project.json
  2. เรียกใช้ dotnet restore
  3. ดำเนินการด้วย dotnet watch run

แต่เมื่อใช้สิ่งนี้ฉันไม่สามารถโหลดซ้ำอัตโนมัติแบบ Angular ได้ ถ้าฉันกดctrl + sเวลานั้นจะไม่มีการทำงานใด ๆ ในเบราว์เซอร์ ขอบคุณที่ให้คำตอบ
Akash Limbani

คุณต้องเรียกใช้แอปพลิเคชันของคุณโดยใช้ command prompt และเพิ่มรายละเอียดการเฝ้าดูในโครงการ json
PrinceT

หรือคุณสามารถใช้โปรไฟล์เริ่มต้นของฉันที่ฉันให้ไว้ในคำตอบของฉัน ..
GrowSing

ใช่ฉันทำอย่างนั้น ฉันตรวจสอบโดยใช้คำสั่ง dotnet watch run นี้
Akash Limbani

คุณสามารถเห็นการเปลี่ยนแปลงในคอนโซล .. เมื่อคุณพยายามเรียกใช้ .. คุณเห็นอะไรหรือไม่
PrinceT

3

ตามข้อกำหนดนี้เราจำเป็นต้องเรียกใช้แอปพลิเคชัน. net หลักเช่นเดียวกับแอปพลิเคชัน Angular โหลดหน้าและเนื้อหาโดยอัตโนมัติโดยไม่ต้องสร้างและรีเฟรชด้วยตนเอง

ฉันได้ทำการวิจัยและมีประสบการณ์มามากกว่า 7 ปีในฐานะนักพัฒนา. net ที่ทำงานเป็นทรัพยากรระดับสูงในบริษัท พัฒนา ASP.NETที่ไม่สามารถทำการโหลดซ้ำอัตโนมัติในโครงการหลัก ASP.NET ได้ อย่างไรก็ตามเราประสบความสำเร็จในการแก้ปัญหาของเราเราใช้ dotnet watch ซึ่งคอยตรวจสอบไฟล์ต้นฉบับและหากไฟล์มีการเปลี่ยนแปลงให้ปิดแอปพลิเคชั่นที่เริ่มทำงานสร้างใหม่และเผยแพร่โครงการแล้วรีสตาร์ทแอปพลิเคชัน รีเฟรชหน้าด้วยตนเองในเบราว์เซอร์เพื่อรับการเปลี่ยนแปลงที่เกิดขึ้นในแอปพลิเคชันเราไม่จำเป็นต้องสร้างหรือเริ่มโครงการ

ขั้นตอนในการติดตามใช้ asp.net watch:

1) แอปพลิเคชันหลัก Create.Net

2) เปิดหน้าต่างคำสั่งในโฟลเดอร์โครงการเว็บของคุณ

3) ประเภท dotnet watch run

4) เปิดเบราว์เซอร์ของคุณและไปที่ API หรือหน้า

5) ทำการเปลี่ยนแปลงรหัสต้นฉบับ

6) บันทึกไฟล์

7) กลับไปที่เบราว์เซอร์และรีเฟรชด้วยตนเอง

8) คุณควรเห็นการเปลี่ยนแปลงที่สะท้อนออกมา


จะทำอย่างไรใน Visual Studio 2019
Akash Limbani

2

dotnet watchคุณสามารถใช้ ได้แก่เอกสาร

ฉันสร้างโปรไฟล์อาหารกลางวันที่กำหนดเองเพื่อให้ทำงานได้ง่ายขึ้นใน VS

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

เมื่อใช้สิ่งนี้จะไม่โหลดซ้ำอัตโนมัติในเบราว์เซอร์เช่น Angular
Akash Limbani

คุณสามารถเปิดใช้งานโครงการเชิงมุมได้หรือไม่
Akash Limbani

2

ใช้ dotnet watch เพื่อคอมไพล์ซอร์สโค้ดอีกครั้ง ใช้เบราว์เซอร์ลิงค์กับ "เบราว์เซอร์รีโหลดเมื่อบันทึก" จาก Visual Studio เพื่อโหลดเบราว์เซอร์ของคุณทั้งหมด https://marketplace.visualstudio.com/items?itemName=MadsKristensen.BrowserReloadonSave


2

เรียกใช้คำสั่งนี้ในคอนโซลโครงการ

dotnet watch run

ทำงานเหมือนกันสำหรับรหัสสตูดิโอภาพ


1

คุณควรคิดสามทางก่อนที่จะไปที่ตัวเลือกนี้ (1) มันเป็นการสิ้นเปลืองทรัพยากร เนื่องจากจำเป็นต้องมีการสร้างอัตโนมัติเช่นเดียวกับการดำเนินการล่วงหน้าของโครงการที่แก้ไขและบางครั้งการแก้ปัญหาทั้งหมด (ลองจินตนาการถึงสื่อกลางถึงโซลูชัน Asp.net ขนาดใหญ่ที่ประกอบด้วยหลายโครงการสร้างขึ้นสำหรับการแก้ไขแต่ละครั้งดำเนินการ !! เวลาเหลือสำหรับการเขียนโปรแกรม ???) (2) ดังที่คุณทราบหน้าโหลดซ้ำใช้มาก เวลาสำหรับการเปิดตัวครั้งแรกหลังจากการสร้างที่ประสบความสำเร็จ !! ... ดังนั้นเวลาที่คุณต้องการได้รับจากตัวเลือกนี้คุณจะสูญเปล่าไปหลายรายการโดยเฉพาะภาษาการเขียนโปรแกรมที่ใช้ CLR (เช่น. NET Core) และสุดท้าย (3) โครงการของคุณคาดว่าจะต้องมีการพัฒนาตัวอย่างทดสอบที่สามารถถูกฉีดโดยอัตโนมัติในมุมมองสำหรับกระบวนการอัตโนมัติที่ดีขึ้นลองจินตนาการว่ามันยากแค่ไหน!

ให้ลองทดสอบวิธีการแก้ปัญหาของคุณแทนจากนั้นคาดว่าการดัดแปลงครั้งต่อไปใด ๆ จะเกิดขึ้นเพียงผิวเผินและเกิดขึ้นน้อย

หากคุณไม่เห็นด้วยกับข้อเสนอของฉันฉันขอแนะนำให้พัฒนาส่วนขยายของ Visual-Studio ซึ่งโหลดหน้าเว็บเป้าหมายได้on-buildดีกว่าon-save-changesเหตุการณ์ ต่อไปCtrl + bจะทำงาน!

จะเริ่มที่ไหนดี

ฉันได้พัฒนา VSIX ที่เฝ้าดูโฟลเดอร์เพื่อโหลดไฟล์ที่สร้างขึ้นโดยอัตโนมัตินอก VS UI ตรวจสอบซอร์สโค้ดที่คุณจะมีแนวคิดเกี่ยวกับการจัดการไฟล์ของโครงการ มันหมุนใน EnvDTE API โปรดดูได้ในนี้ชิ้นส่วนของรหัส

ตรวจสอบโครงการต้นฉบับจากที่นี่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.