2011-02-15 31 views

Trả lời

15

Các RTM chữ ký của phương pháp RenderSection là:

public HelperResult RenderSection(string name, bool required) 

Cũng có một ghi đè giống như sau:

public HelperResult RenderSection(string name) { 
    return RenderSection(name, required: true); 
} 

Lưu ý rằng phương pháp này không còn sử dụng các tham số mặc định, thay vào đó hãy chọn ghi đè rõ ràng.

Chữ ký của phương pháp này đã thay đổi hai lần trong quá trình phát triển MVC 3, giải thích tại sao bạn có thể thấy các ví dụ khó hiểu.

Chỉnh sửa: Dường như tài liệu MVC 3 RTM không chính xác và tham chiếu sai giá trị mặc định của thông số required.

+0

Nhìn vào bản cập nhật của tôi, ý nghĩa của 'Mặc định là sai' hoặc tôi chỉ là tài liệu lỗi thời? – Omar

+3

Ah, tôi hiểu ý của bạn là gì. Tài liệu đã lỗi thời. Tôi sẽ ping các MSDN MSDN để làm cho nó được cập nhật. – marcind

+0

Vậy tài liệu đã lỗi thời trong RTM? Nếu có, vui lòng cập nhật câu trả lời của bạn để tôi có thể đánh dấu câu trả lời là câu trả lời. – Omar

1

nó cần phải được sự thật. Bạn đang nói rằng phần là tùy chọn.

@RenderSection ("SectionName", true)

hoặc @RenderSection ("SectionName", tùy chọn: true)

+0

Tôi có phiên bản MVC 3 cũ hơn không? Bởi vì tôi thấy tham số là 'bắt buộc' không phải' tùy chọn'. Intellisense của tôi có cũ không? – Omar

+0

Thực ra cả hai bạn đều có phiên bản ASP.NET MVC lỗi thời (ví dụ: không phải RTM). – marcind

+1

Của tôi xấu .. nó là "bắt buộc". Câu trả lời là chúng ta đang sử dụng các tham số có tên và không phải là tham số tùy chọn. Do đó bạn * có * để xác định giá trị mặc định của tham số thứ hai. http://msdn.microsoft.com/en-us/library/dd264739.aspx – rkrauter

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