วิธีสร้างแม่แบบโครงการและส่วนขยายสำหรับ Visual Studio 2019

Hi!
เมื่อเร็ว ๆ นี้ฉันได้สร้างเทมเพลตโครงการสองรายการสำหรับ Vue JS + Asp.Net Core ทั้งสองเป็นส่วนขยายของ Visual Studio 2019 พวกเขาแชร์ในตลาด Visual Studio อย่างที่คุณเห็นในลิงค์ด้านล่าง:
- เทมเพลต Vue JS + Asp.Net Core 3.1
คุณต้องการทราบวิธีสร้างส่วนขยายของคุณเองและเผยแพร่แม่แบบของคุณเองหรือไม่? ถ้าใช่ส่วนที่เหลือของบทความเป็นกระบวนการทีละขั้นตอนในการทำเช่นนั้น
การสร้างโครงการ
สิ่งแรกที่คุณต้องทำคือการสร้างโครงการที่คุณต้องการแบ่งปันเป็นแม่แบบ ในบทความนี้ฉันจะสาธิตทีละขั้นตอนโดยใช้ Vue JS + Asp.Net Core project ที่ฉันเผยแพร่ไปแล้ว

การส่งออกโครงการ
เมื่อสร้างโครงการแล้วใน Visual Studio 2019 ให้ไปที่ตัวเลือกเมนูโครงการและเลือกตัวเลือก“ ส่งออกเทมเพลต”:

แม่แบบมีสองประเภท: แม่แบบโครงการและแม่แบบรายการ ในกรณีของเราเรากำลังสร้างเทมเพลตโครงการฉันเลือกตัวเลือกพื้นฐาน:

ขั้นตอนต่อไปคือการกำหนดค่าชื่อคำอธิบายไอคอนที่จะแสดงต่อผู้ใช้และภาพตัวอย่าง การตั้งค่าข้อมูลนี้อย่างถูกต้องเป็นเรื่องสำคัญอย่างยิ่งเท่าที่คุณจะทำได้เพราะจะปรากฏต่อผู้ใช้ขั้นสุดท้ายที่จะดาวน์โหลดและติดตั้งแม่แบบ / ส่วนขยาย

และยกเลิกการเลือกตัวเลือก“ นำเข้าสู่ Visual Studio โดยอัตโนมัติ” ด้วยวิธีนี้คุณจะสามารถติดตั้งส่วนขยายที่คุณกำลังสร้าง
ในที่สุดกระบวนการจะสร้างโฟลเดอร์ขนาดกะทัดรัดที่มีแม่แบบของตัวเอง แต่มันไม่ได้จบการสร้าง:

คำจำกัดความของแท็ก
เมื่อเราสร้างโครงการใหม่ใน Visual Studio 2019 เทมเพลตจะปรากฏพร้อมกับแท็กเฉพาะที่ช่วยให้เรากรองเทมเพลต:

ตั้งแต่ Visual Studio 2019 เวอร์ชันล่าสุดแท็กเหล่านี้จำเป็นสำหรับผู้ที่ต้องการเผยแพร่ส่วนขยาย จะไม่มีการติดตั้งส่วนขยาย แต่เทมเพลตจะไม่ปรากฏในรายการแม้ว่าผู้ใช้จะค้นหาสิ่งนั้น
ในการสร้างแท็กเหล่านี้ให้เปิดโฟลเดอร์ขนาดกะทัดรัดที่สร้างขึ้นด้วยแม่แบบในขั้นตอนสุดท้ายและเปิดไฟล์. vstemplate โดยใช้ Text Editor:

ในส่วน“ ข้อมูลเทมเพลต” เพิ่มหลังแท็ก“ ProvideDefaultName” รายการแท็กที่อ้างอิงถึงเทมเพลตของคุณเช่นแพลตฟอร์มประเภทโครงการภาษา ฯลฯ ในกรณีของฉันฉันระบุดังนี้:

รายการแท็กที่มีอยู่เต็มสามารถดูได้ที่ลิงค์ด้านล่าง:
การสร้างส่วนขยาย
ด้วยเทมเพลตที่สร้างไว้แล้วและชุดแท็กตอนนี้ได้เวลาสร้างไฟล์ติดตั้งสำหรับส่วนขยายแล้ว
สำหรับสิ่งนั้นเพียงแค่สร้างโครงการประเภท VSIX Project:

นี่คือโครงสร้างพื้นฐานของโครงการ:
PS: อย่างไรก็ตามฉันสร้างชื่อโครงการโดยใช้อักขระพิเศษบางตัวเป็น“ +” เพื่อจุดประสงค์ในการสอนโปรดหลีกเลี่ยงการทำเช่นนั้นในสถานการณ์จริง เป็นการดีกว่าที่จะสร้างโดยไม่มีช่องว่างหรืออักขระพิเศษเช่นนั้น: TemplateVueJSAspNetCoreArtigoMedium แทนที่จะเป็นชื่อที่ฉันใส่ มันจะป้องกันการสร้างปัญหาเนื่องจาก VS จะสร้างเนมสเปซและคลาสโดยอัตโนมัติโดยใช้ชื่อนั้น
รวมในรูทการอ้างอิงโฟลเดอร์ขนาดกะทัดรัดไปยังแม่แบบของคุณ เป็นสิ่งสำคัญที่โฟลเดอร์ขนาดกะทัดรัดจะมีการเปลี่ยนแปลงไฟล์. vememplate ด้วยแท็กที่ฉันกล่าวถึงก่อนหน้านี้ อย่าลืมสิ่งนั้น

โครงการนี้มีไฟล์รายการซึ่งจะมีข้อมูลเกี่ยวกับคำแนะนำในการติดตั้งส่วนขยาย e

หากคุณคลิกสองครั้งในไฟล์นั้นไฟล์นั้นจะเปิดเหมือนแบบฟอร์มซึ่งคุณสามารถกรอกลงในฟิลด์ตามฟิลด์

เปลี่ยนข้อมูลที่จำเป็นทั้งหมดอย่างมีคุณภาพอย่างระมัดระวังเนื่องจากจะปรากฏต่อผู้ใช้ขั้นสุดท้ายในการติดตั้งและตลาดเช่นกัน นอกจากนี้ยังจำเป็นต้องระบุฟิลด์“ ผู้แต่ง” อย่างถูกต้องเพราะโดยปกติจะมีชื่อ LAPTOP
หลังจากนั้นคลิกที่ "สินทรัพย์":

ลบเนื้อหาที่มีอยู่ออกในกรณีที่มีและคลิกที่“ ใหม่”:

เลือกตัวเลือกที่ฉันใส่และในพา ธ ระบุโฟลเดอร์ขนาดกะทัดรัดที่คุณเพิ่มลงในโครงการ
รุ่น
เพื่อสร้างไฟล์การติดตั้งมันเป็นเพียงการสร้างโครงการในโหมดการเปิดตัว มันจะสร้างไฟล์. exe ที่ใช้ในการติดตั้งส่วนขยายบน VS

ทำ! ส่วนขยายของเราถูกสร้างขึ้น คุณสามารถทดสอบได้ก่อนที่คุณจะเผยแพร่ในตลาด Visual Studio เพื่อดูว่าทุกอย่างทำงานได้ดีหรือไม่
เผยแพร่ Visual Studio Market
ในกรณีที่คุณต้องการเผยแพร่ส่วนขยายของคุณสู่สาธารณะคุณสามารถทำได้ใน Visual Studio Marketplace
ในการทำเช่นนั้นให้ไปที่arket.visualstudio.comและหลังจากเข้าสู่ระบบด้วยบัญชี Microsoft ของคุณไปที่ตัวเลือกด้านล่าง:


อัปโหลด. exe ของส่วนขยายของคุณ:

กรอกแบบฟอร์มด้วยแม่แบบและข้อมูลส่วนขยาย เนื่องจากข้อมูลดังกล่าวจะเปิดเผยสู่สาธารณะโปรดใส่ใจในรายละเอียด

เมื่อกระบวนการเสร็จสิ้นให้บันทึกและรอกระบวนการอนุมัติ ซึ่งอาจใช้เวลาสักครู่

ข้อสรุป
ฉันหวังว่าบทความนี้จะช่วยคุณ ขอบคุณที่อ่าน
ด้านล่างนี้เป็นโปรไฟล์โซเชียลมีเดียของฉัน รู้สึกอิสระที่จะเชื่อมต่อและถามคำถาม ในโปรไฟล์เหล่านี้ฉันมักแบ่งปันเนื้อหาเกี่ยวกับเทคโนโลยีเว็บและกิจกรรมด้านไอที
Twitter: https://twitter.com/alemalavasi Linkedin: https://www.linkedin.com/in/alexandremalavasi/
ฉันเพิ่งสร้างช่อง Youtube เพื่อสนับสนุนชุมชนด้านเทคนิคโดยใช้แพลตฟอร์มนี้เช่นกันโดยเน้นที่. NET Core, Vue JS, Azure และอีกมากมาย หากคุณสนใจวิชาเหล่านี้ฉันขอแนะนำให้คุณสมัครเป็นสมาชิก เร็ว ๆ นี้จะมีการเผยแพร่เนื้อหาอย่างสม่ำเสมอในขณะที่ฉันกำลังตั้งค่าเสียงวิดีโอและเนื้อหาเพื่อให้คุณได้รับประสบการณ์ที่มีคุณภาพสูง
ลิงก์: https://www.youtube.com/channel/UC-KFGgYiot1eA8QFqIgLmqA
