Tôi có một phương pháp mà trả về một IEnumerable<>
mà nó được xây dựng bằng cách sử dụng các yield return
cú pháp:Vấn đề với debug đồng hồ trong Visual Studio với các phương pháp điều tra viên yield return
namespace Validation
{
public class UserValidator
{
public IEnumerable<ValidationError> Validate(User user)
{
if (String.IsNullOrEmpty(user.Name))
{
yield return new ValidationError("Name", ValidationErrorType.Required);
}
[...]
yield break;
}
}
}
Nếu tôi đặt một breakpoint trong phương pháp này, tôi có thể bước qua mỗi dòng, nhưng nếu tôi cố gắng sử dụng đeo tay hoặc cửa sổ trước mắt để xem các giá trị của một biến tôi nhận được lỗi này:
Cannot access a non-static member of outer type 'Validation.UserValidator.Validate' via nested type 'Validation.UserValidator'
có ai biết tại sao điều này là gì và làm thế nào tôi có thể nhận được xung quanh nó?
Cảm ơn bạn đã gửi câu trả lời. Tôi đoán sau đó câu trả lời cho "làm thế nào tôi có thể nhận được xung quanh nó" một phần của câu hỏi của tôi là "bạn không thể không thay đổi thiết kế của bạn"? – stusherwin
Sợ như vậy, ít nhất là xa như tôi có thể nhìn thấy. – shambulator