我有以下用于在我的应用中注册用户的代码
[HttpPost]
public virtual ActionResult Register( RegisterModel model ) {
if ( !ModelState.IsValid ) {
//Invalid - redisplay form with errors
return View( model );
}
try {
MembershipUser mu = _manager.RegisterUser( model );
//Send confirmation email here
}
catch ( RegistrationException rex ) {
ModelState.AddModelError( "", rex.Message );
}
return RedirectToAction( "Index", "Home" );
}
如果用户在系统上正确注册,我会将他重定向到应用程序的主页
return RedirectToAction( "Index", "Home" );
我的代码在我的开发箱和我的登台服务器中运行。但是,当我将它发布到可通过互联网访问的生产服务器上时,它会在发送电子邮件后挂起,也不会重定向用户。
有什么想法吗?
答案 0 :(得分:2)
洛伦佐,
我认为您可能在远程邮件设置中出现错误(配置和/或已禁用),并且此错误正在您的try / catch块中被“吞噬”。尝试禁用该块,您应该能够看到服务器上发生的实际错误。我的直觉是这就是问题所在!我很多时候都沿着这条路走下去,所以你并不孤单。
切换到“现场”环境的乐趣......
...欢呼声