我需要帮助解决StackOverflowException C#

时间:2011-12-21 00:12:28

标签: c#-4.0

我想知道是否有人可以提供帮助,我对编程C#相对较新,这里是造成StackOverflowException的代码:

private void createButton_Click(object sender, RoutedEventArgs e)
{
    try
    {
        MeWhoService.Account NewAccount = new MeWhoService.Account();

        NewAccount.AccountID = Guid.NewGuid();
        NewAccount.LastName = LastNameTextBox.Text.Trim();
        NewAccount.FirstName = FirstNameTextBox.Text.Trim();
        NewAccount.EmailAddress = EMailAddressTextBox.Text.Trim();
        NewAccount.Password = PasswordTextBox.Password.Trim();
        NewAccount.ConfirmPassword = ConfirmPasswordTextBox.Password.Trim();


        // Set Password
        if (ValidatePassword())
        {
            NewAccount.Password = PasswordTextBox.Password.Trim();
            viewModel.Create(NewAccount);

            NavigationService.Navigate(App.MeAndWhoUri);
        }
        else
        {
            MessageBox.Show("Your Passwords don't match.");
        }
    }
    catch (Exception excp)
    { 
        MessageBox.Show(excp.Message);
    }
}

1 个答案:

答案 0 :(得分:2)

在.NET中调试StackOverflowException很简单。在调试中启动程序,执行导致异常的任何操作,等待抛出异常,然后查看堆栈跟踪。堆栈跟踪将具有一个模式,显示任意数量的重复方法调用。弄清楚哪一个方法调用不应该在堆栈跟踪中调用另一个方法调用,你的错误就会消失。

如果您无法在堆栈跟踪中找到该模式,请将其包含在您的问题中,我相信此处有人可以为您提供帮助。