public async Task <IActionResult> Update([DataSourceRequest] DataSourceRequest request, WebPluginViewModel viewModel) { var tenantId = viewModel.TenantId; if (!isSysAdmin) { tenantId = db.CurrentTenantId; } var model = db.WebPlugins.First(n => n.WebPluginId == viewModel.WebPluginId && n.TenantId == tenantId); if (ModelState.IsValid) { await this.TryUpdateModelAsync <WebPluginViewModel, WebPlugin>(model, "", m => { return(m.ElementType == null); }); model.TenantId = tenantId; await db.SaveChangesAsync(); } return(Json(await new[] { model.ToViewModel <WebPlugin, WebPluginViewModel>() }.ToDataSourceResultAsync(request, ModelState))); }
public async Task <IActionResult> Destroy([DataSourceRequest] DataSourceRequest request, WebPluginViewModel viewModel) { var tenantId = viewModel.TenantId; if (!isSysAdmin) { tenantId = db.CurrentTenantId; } var model = db.WebPlugins.First(n => n.WebPluginId == viewModel.WebPluginId && n.TenantId == tenantId); if (ModelState.IsValid) { db.WebPlugins.Remove(model); await db.SaveChangesAsync(); } return(Json(await new[] { viewModel }.ToDataSourceResultAsync(request, ModelState))); }