2010-02-12 26 views
6

cho một đại biểu nhưLàm thế nào để bạn cung cấp các nhận xét/tài liệu xml cho các tham số đại biểu?

Func<string,string,string> MyFunc = (firstName,lastName) => string.Format("Given Name:{0} Surname:{1}", 
                      firstName, 
                      lastName); 

Làm thế nào bạn có thể ghi lại các thông số của firstName và lastName, vì vậy chúng hiển thị trong IntelliSense (như giới thiệu phương pháp và các thông số làm)?
Ví dụ:

/// <summary> 
/// My Method 
/// </summary> 
/// <param name="firstName">The first name.</param> 
/// <param name="lastName">The last name.</param> 
/// <returns></returns> 
public string MyMethod(string firstName, string lastName) 
{ 
    return string.Format("Given Name:{0} Surname:{1}",firstName,lastName); 
} 

Tôi muốn di chuột qua các đại biểu hoặc có IntelliSense popup khi tôi gõ và cho tôi biết giới thiệu cho các thông số đại biểu, như nó làm với các phương pháp trên.

+0

Với tôi, có vẻ lạ khi ghi lại chức năng ẩn danh. – Foole

Trả lời

8

Trường của loại đại biểu vẫn là trường và không phải là phương thức — nó không tự lấy tham số. Các thông số thuộc về đại biểu loại, không phải trường đại biểu trường. Bạn có thể viết các chú thích cho các tham số khi bạn ủy nhiệm các loại nếu bạn muốn.

/// <summary> 
/// Tests something. 
/// </summary> 
/// <param name="test">Something that's going to be tested.</param> 
delegate void Test(int test); 

Func<string,string,string> là đại biểu chung cho các hàm có ba tham số. Đối với các mục đích cụ thể, bạn luôn có thể khai báo kiểu ủy nhiệm của riêng bạn đại diện cho phương thức trừu tượng cụ thể hơn và thêm các chú thích vào các tham số của nó.

+0

Quá tệ sẽ không có cách nào để cung cấp tài liệu mà intellisense sẽ nhận cho một chuỗi 'Func ' Trong nhiều trường hợp, hàm được gán cho biến được khai báo như vậy sẽ thực hiện các nhiệm vụ cụ thể và có những kỳ vọng cụ thể về những gì đang được thông qua và những gì đang được trả lại. –

Các vấn đề liên quan