Kendo Grid сообщение о дублировании - PullRequest
0 голосов
/ 07 мая 2018

Я использую сетку Kendo, и я остановил сетку от сохранения повторяющихся значений следующим образом в методе создания:

var results = new List<ProviderTypeMasterViewModel>();
        try
        {
            _logger.LogInformation("ProviderTypeMastersController ProviderType_Create Start");
            foreach (var ProviderTypeMaster in ProviderTypeMasterList)
            {
                TblProviderTypeMaster ptm = new ProviderTypeMasterViewModel().ToModel(ProviderTypeMaster);
                var provd = _context.TblProviderTypeMasters.Where(p => p.ProviderTypeName == ProviderTypeMaster.ProviderTypeName).ToList();
                if (provd != null && provd.Count() == 0)
                {
                    if (ProviderTypeMasterList != null && ModelState.IsValid)
                    {
                        string userID = GetUserID();
                        providerTypeMasterService.SaveProviderTypeMaster(ProviderTypeMaster, userID);
                    }
                }
                else
                {
                    duplicate = true;
                    //Session["ErrMsg"] = "Already Exists";
                    //return RedirectToAction("ProviderType_Read", "ProviderTypeMasters");
                }
            }

            _logger.LogInformation("ProviderTypeMastersController ProviderType_Create Complete");
        }
        catch (Exception e)
        {
            _logger.LogError("ProviderTypeMastersController ProviderType_Create Failed - " + e.Message);
        }
        return Json(results.ToDataSourceResult(request, ModelState));

И в методе чтения я отобразил пользователю сообщение об ошибке следующим образом

try
        {
            if (duplicate == true)
            {
                TempData["ErroMsg"] = "Already Exists";
            }
            _logger.LogInformation("In ProviderTypeMastersController ProviderType_Read");
            return Json(providerTypeMasterService.ListProviderTypeMaster().ToDataSourceResult(request));
        }
        catch (Exception e)
        {
            _logger.LogError("ProviderTypeMastersController ProviderType_Read Failed - " + e.Message);
        }
        return View();

Процесс дублирования остановлен. Но я не могу показать сообщение об ошибке пользователю. Может ли кто-нибудь дать мне знать, что я должен делать, если я ошибся. Я пытался использовать ViewBag, ViewData, TempData.

Это мой взгляд

<div>
if (TempData["ErroMsg"] != null)
{
    <p>@TempData["ErroMsg"].ToString()</p>
}

1 Ответ

0 голосов
/ 07 мая 2018

вы можете использовать функции DataBinding () и DataBound () сетки кендо ... эти функции вызывают на стороне клиента после метода Read на стороне сервера ... например, вы можете установить поле и решение с помощью этого поля

...