2008-09-05 33 views

Trả lời

7

Trích từ: http://blogs.msdn.com/ansonh/archive/2005/12/08/501763.aspx

Visual Studio 2005 hỗ trợ nhắm mục tiêu 1.0 phiên bản của khung công tác nhỏ gọn. Để giữ kích thước của khung nhỏ gọn, nó không bao gồm tất cả các loại tương tự tồn tại trong khung máy tính để bàn. Một trong các loại không được bao gồm là NotImplementedException.

Bạn có thể thay đổi các mã được tạo bằng cách chỉnh sửa tập tin đoạn mã: C: \ Program Files \ Microsoft Visual Studio 8 \ VC# \ Snippets \ 1033 \ Refactoring \ MethodStub.snippet và thay đổi phần khai báo như sau:

 <Declarations> 
      <Literal Editable="true"> 
       <ID>signature</ID> 
       <Default>signature</Default> 
      </Literal> 
      <Literal> 
       <ID>Exception</ID> 
       <Function>SimpleTypeName(global::System.NotImplementedException)</Function> 
      </Literal> 
     </Declarations> 
1

Có một lý do khác: FxCop bắt các trường hợp bất kỳ ai ném 'Ngoại lệ' và gắn cờ, nhưng trường hợp ném 'NotImplementedException' là chấp nhận được.

Tôi thực sự thích hành vi mặc định, vì nó có sự khác biệt này. NotImplementedException không phải là một ngoại lệ tạm thời để được ném trong khi bạn đang làm việc theo cách của bạn thông qua mã của bạn. Nó ngụ ý "Ý tôi là, tôi là thực sự sẽ không thực hiện điều này". Nếu bạn để lại codegen theo cách của nó, thật dễ dàng cho bạn để phân biệt trong mã "Tôi sẽ trở lại này sau này" bit từ "Tôi đã quyết định không làm điều này" bit.

+0

Bạn cũng có thể tạo NotYetImplementedException của riêng mình hoặc WillNeverImplementThisMethodException hoặc MissingCodeHereException hoặc WillFixInNextVersionException :) –

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