Отправка значений формы в БД с помощью kendoUI - PullRequest
0 голосов
/ 31 января 2019

Невозможно сохранить записи в БД

Я пробовал разные способы передачи значений в модель, даже жестко закодированные значения.


МОДЕЛЬ:

public class RaarrInspectionModel : BaseModel
{
    public int InspectionTypeId { get; set; }
    public int ProcedureId { get; set; }
    public int SpecificationId { get; set; }
    public int ResultId { get; set; }
    public int RaarrEquipmentId { get; set; }
    public DateTime InspectionDate { get; set; }
    public DateTime NextInspectionDue { get; set; }
    public int InspectorId { get; set; }
    public string Note { get; set; }
    public bool ReadManufacturerInfo { get; set; }
    public bool RecomendedLifespan { get; set; }
    public bool LoadLimitCheck { get; set; }
    public bool VisualTactileCheck { get; set; }
    public bool FuntionChecks { get; set; }
    }

VIEWMODEL:

public class RaarrInspectionVm : BaseModel
{
    public int Id { get; set; }

    public int InspectionTypeId { get; set; }

    public int ProcedureId { get; set; }

    public int SpecificationId { get; set; }

    public int? RaarrEquipmentId { get; set; }

    public int ResultId { get; set; }

    public DateTime InspectionDate { get; set; }

    public DateTime NextInspectionDue { get; set; }
    public int InspectorId { get; set; }
    public string Note { get; set; }

    public bool ReadManufacturerInfo { get; set; }

    public bool RecomendedLifespan { get; set; }

    public bool LoadLimitCheck { get; set; }

    public bool VisualTactileCheck { get; set; }

    public bool FuntionChecks { get; set; }
}    

просмотр очень прост с использованием списков и флажков кендо

КОНТРОЛЛЕР:

public ActionResult Inspect()
    {
        return View();
    }
    [HttpPost]
    [ValidateAntiForgeryToken]
    public virtual ActionResult Inspect(RaarrInspectionVm vm)
    {

        var model = vm.ToModel(new RaarrInspectionModel());
        var raarrInspectionEf = new RaarrInspectionEf();
        raarrInspectionEf.Upsert(model);

        return RedirectToAction("Equipment");
    }

КЛАСС ENTITY FRAMEWORK:

public RaarrInspection Upsert(RaarrInspectionModel model)
    {
        try
        {
            return model.Id.ValidId() ? Update(model) : Add(model);
        }
        catch (Exception ex){
            new LogError(false, "Code RaarrEquipment", 
MethodBase.GetCurrentMethod(), Environment.UserName, ex, 
model).LogToEventLog();
            return null;}}
private RaarrInspection Add(RaarrInspectionModel model)
    {var c = model.ToDomain(new RaarrInspection());
        _db.RaarrInspection.Add(c);
        _db.SaveChanges();
        return c;}

Ожидайте сохранения записей в базе данных.Приложение не падает.

...