สร้างเอกสารประกอบฟังก์ชันโดยอัตโนมัติใน Visual Studio


94

ฉันสงสัยว่ามีวิธี (หวังว่าจะเป็นแป้นพิมพ์ลัด) ในการสร้างส่วนหัวฟังก์ชันสร้างอัตโนมัติในสตูดิโอภาพ

ตัวอย่าง:

Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

และมันจะกลายเป็นแบบนี้โดยอัตโนมัติ ...


'---------------------------------- 
'Pre: 
'Post:
'Author: 
'Date: 
'Param1 (String): 
'Param2 (Integer): 
'Summary: 
Private Function Foo(ByVal param1 As String, ByVal param2 As Integer)

1
หากคุณเข้ามาที่หน้านี้เนื่องจากดูเหมือนว่าฟีเจอร์นี้จะใช้งานไม่ได้ใน IDE ของคุณคุณควรตรวจสอบให้แน่ใจว่าโค้ดของคุณรวบรวมและลองอีกครั้ง คุณลักษณะนี้ใช้ไม่ได้เมื่อโค้ดของคุณมีข้อผิดพลาดในการแยกวิเคราะห์
krowe2

จะสร้างรายการสิ่งที่ต้องทำใน xamarin ได้อย่างไร?
Manthan

คำตอบ:


169

สร้าง "เครื่องหมายแสดงความคิดเห็นสามรายการ"

ใน C # คือ ///

ซึ่งเป็นค่าเริ่มต้นคายออกมา:

/// <summary>
/// 
/// </summary>
/// <returns></returns>

นี่คือเคล็ดลับบางประการในการแก้ไขเทมเพลต VS


7
และใน VB.NET เป็นเครื่องหมายคำพูดเดี่ยวสามเท่า (ตามที่กล่าวไว้ในคำตอบอื่น ๆ )
peSHIr

1
สวยเนี๊ยบไม่รู้เรื่องนั้น
เบรนแดน

"สร้างความคิดเห็นในเอกสาร XML สำหรับ ///" จะไม่ทำงานหากบรรทัดก่อนหน้านี้ที่ไม่ใช่พื้นที่สีขาวเริ่มต้นด้วย "///"
Moon Waxing

เป็นไปได้ไหมที่จะทำสิ่งนี้โดยอัตโนมัติในทุกวิธีคุณสมบัติและตัวแปร? แม้ว่าจะมีรหัสอยู่แล้วก็ตาม?
Robin Bruneel

ลิงก์เคล็ดลับการแก้ไขอีกครั้ง ด่าคุณเว็บทางเดียว!
Michael Paulukonis

49

GhostDoc !

คลิกขวาที่ฟังก์ชันเลือก "เอกสารนี้" และ

private bool FindTheFoo(int numberOfFoos)

กลายเป็น

/// <summary>
/// Finds the foo.
/// </summary>
/// <param name="numberOfFoos">The number of foos.</param>
/// <returns></returns>
private bool FindTheFoo(int numberOfFoos)

(ใช่มันถูกสร้างขึ้นโดยอัตโนมัติทั้งหมด)

รองรับ C #, VB.NET และ C / C ++ มันเป็นค่าเริ่มต้นต่อแมปไปCtrl+ +ShiftD

ข้อควรจำ: คุณควรเพิ่มข้อมูลนอกเหนือจากลายเซ็นวิธีการลงในเอกสารประกอบ อย่าหยุดเพียงแค่เอกสารที่สร้างขึ้นโดยอัตโนมัติ คุณค่าของเครื่องมือเช่นนี้คือสร้างเอกสารที่สามารถดึงออกมาจากลายเซ็นวิธีการโดยอัตโนมัติดังนั้นข้อมูลใด ๆ ที่คุณเพิ่มควรเป็นข้อมูลใหม่

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


16
และนี่คือ 'เอกสาร' ที่ฉันเกลียดมาก มันเพิ่มไบต์โดยไม่ต้องบอกอะไรฉันเลยเมธอดและชื่อพารามิเตอร์ไม่ได้บอกฉันอยู่แล้ว อย่าทำเช่นนี้โดยไม่แก้ไขความคิดเห็นเป็นมูลค่าขณะ ... :-(
peSHIr

13
แน่นอนคุณควรแก้ไขเพื่อเพิ่มข้อมูล แต่เป็นเทมเพลตก็ดีมาก
Rasmus Faber

3
@Rasmus: เป็นเทมเพลตที่สำหรับเอกสารที่ดีควรถูกทิ้งอย่างสมบูรณ์และเขียนใหม่อยู่ดีเนื่องจากไม่มีเนื้อหาที่ให้ข้อมูล ดังนั้นจึงเป็นความพยายามมากกว่าที่จะว่างเปล่า
Joey

37
///

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

จากนั้นเหนือชื่อฟังก์ชันเพียงพิมพ์ ///

และคุณจะได้รับโดยอัตโนมัติ

ใส่คำอธิบายภาพที่นี่


5
คุณลักษณะที่แปลกประหลาดของโพสต์ภาพเคลื่อนไหวของคุณ
n611x007

1
คุณทำได้อย่างไร? ฉันชอบคำตอบนั้น ไม่เคยเห็นมาก่อน
Matthis Kohli

2
มันดีนะ. การเพิ่มหนึ่งครั้งจะเป็นพารามิเตอร์ของฟังก์ชัน
amit jha

19

Visual Assist มีวิธีแก้ปัญหาที่ดีเช่นกันและมีค่าใช้จ่ายสูง

หลังจากปรับแต่งเพื่อสร้างความคิดเห็นแบบ doxygen แล้วการคลิกทั้งสองนี้จะก่อให้เกิด -

/**
* Method:    FindTheFoo
* FullName:  FindTheFoo
* Access:    private 
* Qualifier:
* @param    int numberOfFoos
* @return   bool
*/
private bool FindTheFoo(int numberOfFoos)
{

}

(ภายใต้การตั้งค่าเริ่มต้นจะแตกต่างกันเล็กน้อย)


แก้ไข: วิธีปรับแต่งข้อความ "วิธีการเอกสาร" อยู่ใน VassistX-> Visual Assist Options-> Suggestions เลือก "Edit VA Snippets", Language: C ++, Type: Refactoring จากนั้นไปที่ "Document Method" และกำหนดเอง ตัวอย่างข้างต้นสร้างขึ้นโดย:

va_doxy


โปรดแบ่งปันวิธีการตั้งค่านี้ใน VA
Damian

อธิบายไว้ที่คำตอบ หวังว่านี่จะช่วยได้
Ofek Shilon

ในการแทรกตัวอย่างข้อมูล: ด้วยเคอร์เซอร์ในชื่อเมธอด / ลายเซ็น alt + shift + q> "document method"
Andrew

13

โดยปกติ Visual Studio จะสร้างโดยอัตโนมัติหากคุณเพิ่มเครื่องหมายแสดงความคิดเห็นเดี่ยวสามตัวเหนือสิ่งที่คุณต้องการแสดงความคิดเห็น (วิธีการคลาส)

ใน C # ///นี้จะเป็น

หาก Visual Studio ไม่ทำเช่นนี้คุณสามารถเปิดใช้งานได้ในไฟล์

ตัวเลือก -> แก้ไขข้อความ -> C # -> ขั้นสูง

และตรวจสอบ

สร้างความคิดเห็นเอกสาร XML สำหรับ ///

คำอธิบายภาพ


3

ในภาพพื้นฐานหากคุณสร้างฟังก์ชัน / ย่อยของคุณก่อนจากนั้นในบรรทัดด้านบนคุณพิมพ์ 'สามครั้งมันจะสร้าง xml ที่เกี่ยวข้องโดยอัตโนมัติสำหรับเอกสารประกอบ นอกจากนี้ยังปรากฏขึ้นเมื่อคุณวางเมาส์เหนือใน Intellisense และเมื่อคุณใช้ฟังก์ชันนี้


2

คุณสามารถใช้ข้อมูลโค้ดเพื่อแทรกบรรทัดใดก็ได้ที่คุณต้องการ

นอกจากนี้หากคุณพิมพ์เครื่องหมายคำพูดเดี่ยวสามตัว ('' ') บนบรรทัดเหนือส่วนหัวของฟังก์ชันระบบจะแทรกเทมเพลตส่วนหัว XML ที่คุณสามารถกรอกได้

ข้อคิดเห็น XML เหล่านี้สามารถตีความได้โดยซอฟต์แวร์เอกสารประกอบและรวมอยู่ในเอาต์พุตการสร้างเป็นไฟล์ assembly.xml หากคุณเก็บไฟล์ XML นั้นไว้กับ DLL และอ้างอิง DLL นั้นในโปรเจ็กต์อื่นความคิดเห็นเหล่านั้นจะพร้อมใช้งานใน Intellisense


นั่นคือ VB.NET: ใน C # คือ ///
peSHIr

-1

ฉันกำลังทำงานในโครงการโอเพนซอร์สชื่อ Todoc ซึ่งวิเคราะห์คำต่างๆเพื่อสร้างเอาต์พุตเอกสารที่เหมาะสมโดยอัตโนมัติเมื่อบันทึกไฟล์ เคารพความคิดเห็นที่มีอยู่และรวดเร็วและลื่นไหลจริงๆ

http://todoc.codeplex.com/

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