คลาสไดอะแกรมใน VS 2017


180

ฉันใช้ VS 2015 และชอบรายการ Class Diagram ฉันเพิ่งอัปเกรดเป็น 2560 และดูเหมือนไม่พบรายการ Class Diagram ใครรู้ว่าฉันไปถึงมันได้อย่างไร


37
ไปที่เมนูเครื่องมือ -> รับเครื่องมือและคุณสมบัติ เลือกเวิร์กโหลด 'Visual Studio extension' เลือกคลาส 'ตัวเลือก' ติดตั้ง
Artur Karbone

คำตอบ:


210

ใช้ VS2017 Enterprise:

  1. ไปที่แถบเปิดใช้ด่วน (ด้านบนขวา) Ctrl+Q
  2. พิมพ์ "Class Designer" และลิงค์ติดตั้งจะปรากฏขึ้น

    เปิดใช้ด่วน> ตัวออกแบบคลาส

  3. คลิกติดตั้งรีสตาร์ทและออกไปแข่ง ... สนุก!


9
คุณต้องพิมพ์ "Diseñador de clases" หากคุณใช้งานเวอร์ชั่นภาษาสเปน
xav56883728

3
ใน Visual Studio Community 2017 รุ่นภาษาฝรั่งเศสให้พิมพ์ "Concepteur de classes" ในเวอร์ชันภาษาเยอรมันให้พิมพ์ "Klassen Designer" (ขอบคุณ @dba)
LePatay

ทำงานได้Professionalดีเช่นกัน
Nimesh Madhavan

5
ไม่มีผลลัพธ์สำหรับฉัน
Mark Lauter

138

สังเกตเห็นสิ่งนี้ในเบต้าและคิดว่าฉันติดตั้งไม่ดี องค์ประกอบ UI เพื่อเพิ่มคลาสไดอะแกรมใหม่หายไปและฉันไม่สามารถเปิดไฟล์ * .cd Class Diagram ที่มีอยู่ในโซลูชันของฉันได้ เพิ่งอัพเกรดเป็น 2017 และพบปัญหายังคงอยู่ หลังจากการตรวจสอบบางอย่างดูเหมือนว่าองค์ประกอบ Class Designer จะไม่ได้รับการติดตั้งโดยค่าเริ่มต้น

เรียกใช้ VS Installer อีกครั้งและเพิ่มองค์ประกอบ Class Designer คืนค่าทั้งความสามารถของฉันในการเปิดและแก้ไขคลาสไดอะแกรมรวมถึงองค์ประกอบ UI ที่จำเป็นในการสร้างองค์ประกอบใหม่

VS Installer> ส่วนประกอบแต่ละตัว> Class Designer


2
องค์ประกอบ UI ใดที่ให้บริการ คอมโพเนนต์นี้ถูกเช็กเอาต์สำหรับการติดตั้งของฉัน (VSPro 2017) แต่ไม่มีตัวเลือกเมนูชื่อ 'Class Designer' ให้ใช้งานเมื่อฉันรีสตาร์ท VS --- อ๊ะแย่จัง เนื่องจากอาจมีคนอื่นออกมีเป็นใจลอยเป็นฉันที่นี่เป็นคำแนะนำขั้นตอนโดยขั้นตอนจาก MS ฉันลองใช้ไฟล์> ใหม่> ไฟล์ แต่ฉันต้องทำโครงการ> เพิ่มรายการใหม่ คำสาปของเมนูที่ไม่มีที่สิ้นสุด ...
ฌอน Allred

32

คุณต้องติดตั้งเวิร์กโหลด“ การพัฒนาส่วนขยาย Visual Studio” และส่วนประกอบเสริม“ Class Designer” จากตัวติดตั้ง Visual Studio 2017 เพื่อรับคุณลักษณะ

ดู: ไดเร็กทอรีคอมโพเนนต์ Visual Studio Community 2017

แต่ชนิดของรายการนี้ไม่สามารถใช้ได้ในทุกประเภทโครงการ ลองด้วยตัวคุณเอง:

  • ในแอป Console (.NET Framework) มีให้ใช้งาน

  • ในคอนโซล App (.NET แกน) ไม่สามารถใช้ได้

ฉันไม่พบข้อมูลเพิ่มเติมเกี่ยวกับความพร้อมใช้งานในอนาคตสำหรับโครงการ. NET Core




4
ฉันคิดว่า Microsoft ควรทำให้ดีไซเนอร์ระดับยอดเยี่ยมอีกครั้ง
Tanveer Badar

จริงๆแล้วมันมีอยู่ใน. NET Core แต่คุณต้องเข้าไปในชั้นเรียน (ตัวควบคุมบริการ ฯลฯ ) และคลิกขวา -> "เพิ่มลงในไดอะแกรมอย่างรวดเร็ว"
Dumitriu Sebastian

24

Woo-ฮู! มันใช้งานได้กับการแฮ็ค!

ตามความคิดเห็นนี้คุณต้อง:

  1. แก้ไขด้วยตนเองMicrosoft.CSharp.DesignTime.targetsอยู่ในC:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\Microsoft\VisualStudio\Managed(สำหรับ VS Community edition, ปรับเปลี่ยนพา ธ สำหรับรุ่นอื่น ๆ ), ผนวกClassDesignerค่าเข้ากับProjectCapability(บานหน้าต่างด้านขวา):ไฟล์ต่าง

  2. รีสตาร์ท VS

  3. สร้างไฟล์ข้อความด้วยตนเองพูดMyClasses.cdด้วยเนื้อหาต่อไปนี้: <?xml version="1.0" encoding="utf-8"?> <ClassDiagram MajorVersion="1" MinorVersion="1"> <Font Name="Segoe UI" Size="9" /> </ClassDiagram>

การเล่นชนิดหนึ่ง ตอนนี้คุณสามารถเปิดไฟล์นี้ใน VS คุณจะเห็นข้อความแสดงข้อผิดพลาด "การอ้างอิงวัตถุไม่ได้ตั้งค่าเป็นอินสแตนซ์ของวัตถุ" หนึ่งครั้งหลังจาก VS เริ่มทำงาน แต่ไดอะแกรมทำงาน

ตรวจสอบกับVS 2017 Community Edition, v15.3.0พร้อมแอพ / โครงการ. NETCore 2.0 :

ป้อนคำอธิบายรูปภาพที่นี่

ปัญหา GitHub คาดว่าจะแก้ไขใน v15.5


2
ฉันไม่ต้องแก้ไขทำขั้นตอนที่ 1 เพียงแค่สร้างไฟล์. cd พร้อมเนื้อหา xml ที่แสดงที่นี่ดูเหมือนว่าเพียงพอสำหรับการทำงานกับ dotnetcore ขอบคุณสำหรับแฮ็คนี้
eka808

1
ฉันเดาว่าคุณมี VS ในภายหลังว่า 15.5 การเปิดตัวปัจจุบันคือ 15.7
มิทรี

18

ขั้นตอนต่อไปนี้ใช้ได้สำหรับฉัน:

  • ปิด VS
  • เรียกใช้โปรแกรมติดตั้ง Studio Visual
  • คลิกที่ปุ่ม 'แก้ไข' ภายใต้ 'Visual Studio Professional 2017'
  • ในหน้าต่างใหม่เลื่อนลงและเลือก 'Visual Studio Extension Development' ภายใต้ 'ชุดเครื่องมืออื่น ๆ '
  • จากนั้นทางด้านขวาถ้ายังไม่ได้เลือกให้คลิกที่ 'Class Designer'
  • คลิกที่ 'แก้ไข' เพื่อยืนยัน

4
Btw ตอนนี้สามารถทำได้จาก VS ดังนั้นไม่จำเป็นต้องปิดเพียงคลิกเครื่องมือ -> รับเครื่องมือและคุณสมบัติ
Artur Karbone

1
ใช่คุณถูกต้อง @ArturKarbone ถึงแม้ว่าตัวติดตั้งจะปิด VS เป็นส่วนใหญ่แล้ว
Umair Malhi

7

VS 2017 Professional edition- ไปที่ประเภทการเปิดใช้ด่วน "Class ... " เลือกตัวออกแบบคลาสและติดตั้ง

เมื่อติดตั้งแล้วไปที่เพิ่มการค้นหารายการใหม่ "คลาสแผนภาพ" และคุณพร้อมที่จะไป


4

นอกจากคำตอบของ @ ericgol: ใน Visual Studio Community 2017 รุ่นภาษาฝรั่งเศสให้พิมพ์ "Concepteur de classes" ในแถบค้นหา


3
ในภาษาเยอรมัน: "Klassen Designer" :) - สิ่งที่ตลก, MS จำไม่ได้ว่ามันเป็นภาษาเริ่มต้นของตัวเองในการค้นหาภาษาท้องถิ่น ......
dba

โพสต์นี้ดูเหมือนจะไม่ได้ให้คำตอบที่มีคุณภาพสำหรับคำถาม
sɐunıɔןɐqɐp

1
sɐunıɔןɐqɐpคำตอบของฉันถูกหมายถึงเป็นภาคผนวกง่าย ๆ สำหรับคำตอบของ ericgol แต่ในเวลานั้นฉันไม่สามารถแสดงความคิดเห็นได้ทุกที่เนื่องจากระดับชื่อเสียงของฉัน
LePatay

3
  1. เปิดตัวติดตั้ง Visual Studio จากเมนูเริ่มของ Windows หรือโดยการเลือกเครื่องมือ> รับเครื่องมือและคุณสมบัติจากแถบเมนูใน Visual Studio

    Visual Studio Installer เปิดขึ้น

  2. เลือกแท็บแต่ละองค์ประกอบแล้วเลื่อนลงไปที่หมวดเครื่องมือรหัส

  3. เลือก Class Designer จากนั้นเลือก Modify

หน้าต่างตัวติดตั้ง Studio Visual

คอมโพเนนต์ Class Designer เริ่มการติดตั้ง

สำหรับรายละเอียดเพิ่มเติมเยี่ยมชมลิงค์นี้: วิธีการ: เพิ่มไดอะแกรมของคลาสให้กับโครงการ



0

หมายเหตุเพิ่มเติมเกี่ยวกับคำตอบปี 2017 ของ Dmitry ฉันเปิดขึ้น

C:\Program Files (x86)\Microsoft Visual 
Studio\2017\Community\MSBuild\Microsoft\VisualStudio\Managed\ 
Microsoft.CSharp.DesignTime.targets 

และไปที่<ProjectCapability>องค์ประกอบ ฉันมีสิ่งนี้แล้ว:

<ProjectCapability Include="
                          CSharp;
                          Managed;
                          ClassDesigner**;**" />

กับ ClassDesigner แล้ว แต่ฉันก็ยังไม่สามารถลากรายการไปยัง Diagram.cd ที่แฮ็กทำโดยใช้วิธีการแก้ไข XML ที่ Dmitry กล่าวถึง (

สร้างไฟล์ข้อความด้วยตนเองพูด MyClasses.cd ด้วยเนื้อหาต่อไปนี้:

<?xml version="1.0" encoding="utf-8"?> <ClassDiagram MajorVersion="1"
> MinorVersion="1">
>     <Font Name="Segoe UI" Size="9" /> </ClassDiagram>

) แต่เมื่อฉันถอดเครื่องหมายอัฒภาคออกใน 'ClassDesigner' ในองค์ประกอบนั้นเปิด Visual Studio, voila อีกครั้งฉันสามารถลากคลาสจาก Solution Explorer ของฉันไปยังหน้าต่าง Diagram.cd ของฉัน

ดังนั้นโดยสรุปองค์ประกอบในการMicrosoft.CSharp.DesignTime.targetsทำงาน:

<ProjectCapability Include="
                              CSharp;
                              Managed;
                              ClassDesigner" />

ฉันใช้ VS 2019 เวอร์ชัน 16.1.5

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