Tengo un método de controlador CreateOrUpdate; se supone que este método guarda el automóvil en la base de datos y luego lo devuelve de manera normal.Ver no actualizar después de la publicación
public ActionResult CreateOrUpdate(int ID = 0)
{
Car car = new Car(ID);
}
[HttpPost]
public ActionResult CreateOrUpdate(Car car)
{
car.Save();
return View(car);
}
En el método theCar.Save(), i establecer el ID para el coche, con lo que el id estará en la base de datos después de que el coche se guarda (Cuando se realiza una inserción utilizo SCOPE_IDENTITY(), el El método save funciona bien, y si depuro y miro los valores para el auto después de que se llama a Save(), la identificación es correcta. Pero cuando se representa View, el ID es 0 en la vista.
¿Alguien podría ayudarme? yo, y dime por qué sucedería esto. ¿No se supone que debo cambiar el modelo de la vista en el método HTTP POST? ¿Debería redirigir al método original CreateOrUpdate() si el guardado fue exitoso?
intento sin tener 'theCar.Save();' línea . –
theCar.Save() solo guarda el modelo. Este no es el problema. Incluso si establezco una propiedad de la clase en el método HttpPost, sin el método theCar.Save(). La propiedad no se refleja en la vista – Captain0
FYI: en el caso de que haya guardado los datos correctamente y desee volver a mostrar la página, es posible que desee seguir el patrón Publicar/Redirigir/Obtener. https://en.wikipedia.org/wiki/Post/Redirect/Get –