I want to show Components in a tabs , so first of all create few components. In this project we have three components, First View Component public class AllViewComponent : ViewComponent { private readonly UserManager<ApplicationUser> _userManager; public AllViewComponent(UserManager<ApplicationUser> userManager) { _userManager = userManager; } public async Task<IViewComponentResult> InvokeAsync() { List<StudentViewModel> allUsers = new List<StudentViewModel>(); var items = await _userManager.Users.ToListAsync(); foreach (var item in items) { allUsers.Add(new StudentViewModel {Id=item.Id, EnrollmentNo = item.EnrollmentNo, FatherName = item.FatherName, Name = item.Name, Age = item.Age, Birthdate = item.Birthdate, Address = item.Address, Gender = item.Gender, Email = item.Email }); }
In my previous article i have already learned about hyperlink and their uses, we have already use hyperlink in different application like asp.net. Previous article coves all such things like hyperlink properties and methods. Today i am talking about hyperlink in MVC, and how to use it.
The given snap shows that how MVC work. According to the sanp view show the all tags of html. In MVC application, we use ActionLink extension of HtmlHelper. I have show the syntax and example of Hyperlink.
After click on Tarun(Hyperlink), You will get the specific Employee Information.
The given snap shows that how MVC work. According to the sanp view show the all tags of html. In MVC application, we use ActionLink extension of HtmlHelper. I have show the syntax and example of Hyperlink.
Syntax:
@Html.ActionLink(String LinkText, String actionName)
Example
@Html.ActionLink("Hello World","Hello")
Action Method in Controller class
public string Hello() { return "Hello World!"; }OK Done this is complete. Now, Today we have also learn how to bind hyperlink from database table in MVC. First to prepare the class for employee entity in model folder also map this with database table(mentioned in previous article), Now your code look like
using System; using System.Collections.Generic; using System.ComponentModel.DataAnnotations.Schema; using System.Linq; using System.Web; namespace WebApplication10.Models { [Table("Employee")] public class Employee { public int ID { get; set; } public string Name { get; set; } public int age { get; set; } } }Prepare the Context class for connecting database in the same model folder.
using System; using System.Collections.Generic; using System.Data.Entity; using System.Linq; using System.Web; namespace WebApplication10.Models { public class EmployeeContext: DbContext { public EmployeeContext() : base("EmployeeConnection") { } public DbSet<Employee> pl { get; set; } } }
Here EmployeeContext() constructor call the base class constructor for making connection. "EmployeeConnection" connectionString available in web.confog file. Prepare the controller class for responding the request, which is generated by the client.
public ActionResult linkEmp() { EmployeeContext context = new EmployeeContext(); List<Employee> employeelist = context.pl.ToList(); return View(employeelist); }Through the EmployeeContext class, first we retrieve all the data from the table and then store into the employee instance. Now, prepare the view for list of employee.
@model IEnumerable<WebApplication10.Models.Employee> @using WebApplication10.Models; @{ ViewBag.Title = "Show the particular employee"; } <h2>Click to show the details of employee</h2> <ol> @foreach (Employee emp in @Model) { <li>@Html.ActionLink(emp.Name, "Index", new { id = emp.ID })</li> } </ol>Here, we are using IEnumerable interface for collection and in the ActionLink Method, first argument of that method shows the name of the employee and second parameter show that method, which is call by hyperlink(Mentioned in Controller class) also method contain single parameter like id.
public ActionResult Index(int id) { EmployeeContext context = new EmployeeContext(); Employee emp = context.pl.Single(p2=>p2.ID==id); return View(emp); }Code Generate the following output
After click on Tarun(Hyperlink), You will get the specific Employee Information.
Comments
Post a Comment