이것은 내 dev 컴퓨터에서 작동하지만 실제 프로덕션 서버에서는 작동하지 않습니다.생산 MVC3 서버에서 DateTime 값을 저장하지 않습니다.
사용자를 등록하려고하는데 생년월일은 dd/mm/yyyy
이어야합니다. 예 : 28/09/1980
.
이것은 내 컴퓨터에서 잘 작동하며 등록 할 수 있으며 생년월일을 올바르게 저장합니다.
하지만 제품 서버에서 동일한 코드를 실행했을 때 오류 얻을 :The value '29/08/1980' is not valid for Fecha de Nacimiento (dd-mm-aaaa):.
내 dev에 컴퓨터에 correctl를 저장할 수 날짜 원인이 될 수 내가 무엇을 찾고해야하고 무엇을하지만, 생산에서 잘 작동하지 않습니까?
값을 09/28/1989
으로 바꾸면 볼리비아에서 날짜 형식을 지정하기 때문에 일, 월, 연도를 사용해야합니다.
[HttpPost]
public ActionResult Register(UserModel model)
{
EFCityRepository cityRepo = new EFCityRepository();
model.Cities = new List<SelectListItem>();
foreach (var city in cityRepo.FindAllCities())
{
model.Cities.Add(new SelectListItem { Text = city.Name, Value = city.CityId.ToString(), Selected = true });
}
EFGenderRepository genderRepo = new EFGenderRepository();
model.Genders = new List<SelectListItem>();
foreach (var gender in genderRepo.FindAllGenders())
{
model.Genders.Add(new SelectListItem { Text = gender.Name, Value = gender.GenderId.ToString(), Selected = true });
}
if (ModelState.IsValid)
{
Domain.User user = Mapper.Map<UserModel, Site.Domain.User>(model);
user.UserRoleId = 1;
user.EmailVerificationCode = SecurityHelpers.GenerateRandomToken();
user.IsActive = true;
user.LancesSpent = 0;
user.GoldShopPointsSpent = 0;
user.LanceCreditBalance = 25;
user.GoldShopCreditBalance = 0;
user.DateOfRegistry = DateTime.Now;
user.LastDateLogin = DateTime.Now;
var result = userRepo.CreateUser(user);
if (result == UserCreationResults.Ok)
{
SecurityHelpers.SendVerificationEmail(user.Email, user.UserId, user.EmailVerificationCode);
FormsAuthentication.SetAuthCookie(model.Login, false /* createPersistentCookie */);
return RedirectToAction("Index", "Home");
}
else
{
switch (result)
{
case UserCreationResults.UsernameExists:
ModelState.AddModelError("", "El nombre de usuario ya esta siendo utilizado.");
break;
case UserCreationResults.EmailAlreadyExists:
ModelState.AddModelError("", "Ese correo ya esta en uso.");
break;
case UserCreationResults.NicknameAlreadyExists:
ModelState.AddModelError("", "El nickname ya esta siendo utilizado.");
break;
case UserCreationResults.UnknownError:
ModelState.AddModelError("", "Algo durante el registro. Por favor intente de nuevo.");
break;
default:
break;
}
}
}
// If we got this far, something failed, redisplay form
return View(model);
}
}
이 실패 계층
여기에 사용자가 제출 버튼을 클릭 할 때 실행되는
[HttpPost]
의 조치 방법이다? MVC 또는 데이터베이스에 저장? 프롬프트에서 알 수 있듯이 28-08-1980을 사용해 보셨습니까? –저장을 수행하고 오류를 생성하는 코드를 포함하면 도움이됩니다. 그러나 추측해야만한다면 서버의 로케일 설정을 확인하는 것이 좋습니다. devbox와 같은 로켈을 사용하지 않을 수도 있습니다. – Jason
@Jon Skeet : 오류는 프로덕션에서만 발생하므로 어디에서 실제로 중단되는지 확인할 수는 없습니다. 추측을해야한다면 오류가 ActionMetod에 있다고 말할 수 있습니다. –