Создать гиперссылку на значение TD таблицы ASP.NET MVC и angularjs
Всем Привет,
Я пишу статью ASP.Net приложение MVC, в котором я отображаю таблицу, которая выглядит как сетка, используя AngularJS и какой-то HTML-скрипт. Когда я показываю таблицу и TD для ячейки, когда я нажимаю на значение TD, я должен иметь возможность выполнить действие метода Update или Edit, значение TD я показываю с помощью контроллера AngularJS. Я просматриваю коллекцию и отображаю значение в TD. Теперь в самом TD у меня должна быть гиперссылка на его значение, и при нажатии на нее должно быть вызвано действие обновления контроллера.
Если вы дадите мне еще один контроллер AngularJS и действие для вызова действия обновления в контроллере C#, это тоже нормально. Любая помощь может быть фрагментом кода, ссылкой или даже предложением, которое будет очень полезно. Заранее спасибо.
Вот мой взгляд
@using MVCWithWebApiApp.Models; @using System.Linq; @model IEnumerable<MVCWithWebApiApp.Models.User> @{ ViewBag.Title = "Index"; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Users Details</title> <script src="~/Scripts/jquery-2.2.4.min.js"></script> <script src="~/Scripts/angular.min.js"></script> <script src="~/Scripts/myApp.js"></script> </head> <body> <h2>Index</h2> <div data-ng-app="myApp" data-ng-controller="userController"> <table style="border:none 0px gray;"> <tr> <td> <table style="border:solid 1px gray;"> <tr> <td style="border:solid 1px gray;">User Id</td> <td style="border:solid 1px gray;">User Name</td> </tr> <tr data-ng-repeat="usr in users"> <td><a href="/User/UpdateUser/"> {{usr.UserId}} </a> </td> <td><a>{{usr.UserName}}</a></td> </tr> </table> </td> <td> @Html.ActionLink("Create User", "CreateUser") </td> </tr> </table> </div> </body> </html>
Вот мой контроллер:
using MVCWithWebApiApp.Models; using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Web; using System.Web.Mvc; namespace MVCWithWebApiApp.Controllers { public class UserController : Controller { public ActionResult Index() { var dbContext = new MVCDBContext(); List<User> listOfUsers; listOfUsers = dbContext.Users.ToList(); return View(listOfUsers); } public ActionResult GetUsers() { var dbContext = new MVCDBContext(); List<User> listOfUsers; listOfUsers = dbContext.Users.ToList(); return Json(listOfUsers, JsonRequestBehavior.AllowGet); } // // GET: /User/Details/5 public ActionResult Details(int id) { return View(); } // // GET: /User/Create public ActionResult CreateUser() { User user = new User(); user.UserId = 1; user.UserName = "Abdul"; return View(user); } // // POST: /User/Create [HttpPost] public ActionResult CreateUser(FormCollection collection) { try { var dbContext = new MVCDBContext(); User user = new User(); user.UserId = 1; user.UserName = "Abdul"; dbContext.Users.Add(user); dbContext.SaveChanges(); return RedirectToAction("Index"); } catch { return View(); } } // // GET: /User/Update/5 public ActionResult UpdateUser(int id) { return View(); } // // POST: /User/Edit/5 [HttpPost] public ActionResult UpdateUser(int id, FormCollection collection) { try { var dbContext = new MVCDBContext(); User user = new User(); user.UserId = 1; user.UserName = "Abdul"; user = dbContext.Users.Where(i => i.UserId == 1).FirstOrDefault(); user.UserName = "Abdul Aleem"; dbContext.SaveChanges(); return RedirectToAction("Index"); } catch { return View(); } } // // GET: /User/Delete/5 public ActionResult DeleteUser(int id) { return View(); } // // POST: /User/Delete/5 [HttpPost] public ActionResult DeleteUser(int id, FormCollection collection) { try { var dbContext = new MVCDBContext(); User user = new User(); IQueryable<User> Users = dbContext.Users.Where(i => i.UserId == 1); foreach (User a in Users) { dbContext.Users.Remove(a); } dbContext.SaveChanges(); return RedirectToAction("Index"); } catch { return View(); } } } }
Что я уже пробовал:
Я пытаюсь с помощью google и различных способов исправить это.