Tôi có mã đệ quy sau đây và tôi nhận được một ngoại lệ stackoverflow. Tôi không thể tìm ra nguyên nhân gốc rễ bởi vì một khi tôi nhận được ngoại lệ, tôi không nhận được cuộc gọi đầy đủ ngăn xếp trong Visual studio.làm thế nào tôi có thể nắm bắt gốc của một ngoại lệ stackoverflow trên mã đệ quy
Ý tưởng là có các nhóm tổ chức hội tụ thành các nhóm "Chính" lớn hơn.
Có ai thấy lỗ hổng trên mã này bên dưới có thể là thủ phạm không?
private Unit GetUnit(Unit organisationalUnit)
{
if (organisationalUnit.IsMainUnit)
{
return organisationalUnit;
}
if (organisationalUnit.Parent == null)
return null;
return GetUnit(organisationalUnit.Parent);
}
do đó, nó là một vấn đề dữ liệu mà cha mẹ của một đơn vị đã được thiết lập như chính nó nhưng đề nghị mã của bạn để kiểm tra này cố định vấn đề của tôi. . – leora
@ooo Tôi rất vui. Lỗi lặp lại chính họ. Giống như lịch sử :-) – Mau
Điều này sẽ không bắt tất cả các trường hợp, một số chu kỳ có thể đi sâu hơn, giống như khi một 'Đơn vị' là ông bà của riêng nó. –