2016-06-08 3 views
0

Я создаю проект с MVC4 в Visual studio 2013. И в моем проекте я вызываю WebAPI для входа и регистрации. Но иногда я получаю странную ошибку, напримерОшибка веб-Api при регистрации и регистрации

{"$ id": "1", "Message": "Произошла ошибка."}.

И эта ошибка произошла несколько раз. Несколько раз все работает отлично.

WebAPIConfig.cs 

var json = config.Formatters.JsonFormatter; 
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects; 
config.Formatters.Remove(config.Formatters.XmlFormatter); 

config.Routes.MapHttpRoute( 
name: "DefaultApi", 
routeTemplate: "api/{controller}/{id}", 
defaults: new { id = RouteParameter.Optional } 
); 
config.Routes.MapHttpRoute("Register", "api/{controller}/{action}/{login}/{password}", 
new 
{ 
login = UrlParameter.Optional, 
password = UrlParameter.Optional, 

}); 
config.Routes.MapHttpRoute("Login", "api/{controller}/{action}/{loginlog}/{password}", 
new 
{ 
loginlog = RouteParameter.Optional, 
password = RouteParameter.Optional, 

}); 

ClientApiControllers.cs 

[HttpGet] 
public int Register(string login, string password) 
{ 
int id = 0; 
string str = "+7(" + login[0] + login[1] + login[2] + ")" + login[3] + login[4] + login[5] + "-" + login[6] + login[7] + "-" + login[8] + login[9]; 

if (db.UserProfiles.Where(a => a.UserName == str).FirstOrDefault()==null) 
{ 
WebSecurity.CreateUserAndAccount(str, password, false); 

id = db.UserProfiles.Where(a => a.UserName == str).First().UserId; 
} 
return id; 
} 
[HttpGet] 

public int Login(string loginlog, string password) 
{ 
int id = 0; 
string str = "+7(" + loginlog[0] + loginlog[1] + loginlog[2] + ")" + loginlog[3] + loginlog[4] + loginlog[5] + "-" + loginlog[6] + loginlog[7] + "-" + loginlog[8] + loginlog[9]; 
if (WebSecurity.Login(str, password)) 
{ 

return id=db.UserProfiles.Where(a=>a.UserName== str).First().UserId; 

} 
return id; 
} 
+0

Отладить код и проверить, где вы получаете сообщение об ошибке, а также показать, что код кода в вашем вопросе. –

+0

При развертывании? Использование Azure? – Tushar

ответ

0

Проверьте, в каком состоянии находится код, полученный при получении ошибки. Нужно четкое описание того, какую ошибку вы получаете.

Смежные вопросы