2010-06-30 20 views
8

Tôi đã tạo một lớp học một phần cho lớp xsd được tạo tự động của tôi. Vấn đề là trong gỡ lỗi lớp này một phần. Điểm ngắt không được nhận dạng hoặc trình biên dịch không phá vỡ các điểm ngắt được đặt trong lớp một phần.Gỡ lỗi một phần lớp

// Autogenerated class by xsd.exe 

public partial class Class1 
{ 
    private Class1Brand[] brandField; 

    private string Class1guidField; 

    ..... 
} 

// Debug Part - probably in a different file 
public partial class Class1 
{ 
    public static Validity setValidity(Validity validity) 
    { 
    // ********* BREAKPOINT IS SET ON THE NEXT LINE *********** 
     validity.LastVerified = DateTime.Now; 

     //certificates are only updated within 14 days before expiry date 
     TimeSpan tsCheck = validity.NotAfter - validity.LastVerified; 
     if (tsCheck.Days <= 14) 
     { 
      DateTime dtNotBefore = validity.NotAfter.AddDays(conf.validityPeriod()); 
      if (validity.NotAfter > DateTime.Now) 
      { 
       dtNotBefore = validity.NotAfter; 
      } 
      else 
      { 
       dtNotBefore = DateTime.Now; 
      } 
      validity.NotBefore = dtNotBefore; 
      validity.NotAfter = dtNotBefore.AddDays(conf.validityPeriod()); 
     } 
     return validity; 
    } 

}

Trả lời

22

XSD trang trí tất cả các lớp được tạo ra với DebuggerStepThroughAttribute, mà ngăn cản việc gỡ rối từ dừng lại ở một phương pháp/lớp được đánh dấu bằng thuộc tính này.

Để giải quyết điều này:

  • Hoặc Tìm kiếm và thay thế tất cả lần xuất hiện của DebuggerStepThrough thuộc tính
  • Hoặc, Trong Visual Studio, đi đến cụ-Options ..., di chuyển đến Debugging/Tổng quát và bỏ chọn hộp bên cạnh Bật Chỉ Mã của tôi
+0

+1 I chỉ là về để trả lời nhưng không thể nhớ tên thuộc tính lol –

+1

Lưu ý rằng nếu bạn thực hiện bất kỳ thay đổi nào đối với các tệp được mã hóa, chúng sẽ bị mất nếu tệp đó được tạo lại. –

+0

Anton, bạn đã làm cho ngày của tôi cảm ơn rất nhiều – Bart