public async Task <ActionResult> Create(DeviceVM vm)
        {
            var uniqueIdGenerator = _client.GetGrain <IUniqueIdGenerator>(vm.Entity.ProductId);

            var newId = await uniqueIdGenerator.NewId();

            vm.Entity.ID = newId;

            if (!ModelState.IsValid)
            {
                return(PartialView(vm));
            }
            else
            {
                vm.DoAdd();
                if (!ModelState.IsValid)
                {
                    vm.DoReInit();
                    return(PartialView(vm));
                }
                else
                {
                    return(FFResult().CloseDialog().RefreshGrid());
                }
            }
        }
 public ActionResult Edit(DeviceVM vm)
 {
     if (!ModelState.IsValid)
     {
         return(PartialView(vm));
     }
     else
     {
         vm.DoEdit();
         if (!ModelState.IsValid)
         {
             vm.DoReInit();
             return(PartialView(vm));
         }
         else
         {
             return(FFResult().CloseDialog().RefreshGridRow(vm.Entity.ID));
         }
     }
 }