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 }); }
There are various methods, Here we take SqlDataSource in code file. In previous articles, which is written on Gridview. Most of the article cover SqlDataSource for binding purpose, Now , again we use sqldatasource for binding but different style.
Behind the algorithm
Step-1 : First of all design front-end. Add GridView onto the webform.
Step-2 : Create columns with asp:Bound field, like
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns ="false">
<Columns >
<asp:BoundField HeaderText ="Serial Number" DataField ="int" />
<asp:BoundField HeaderText ="Name" DataField ="name" />
<asp:BoundField HeaderText ="Address" DataField ="address" />
</Columns>
</asp:GridView>
Step-3 : Create a object for SqlDataSource control class, also add necessary properties.
Step-4 : Add SqlDataSource object into page.
Now, your code look like
SqlDataSource sq = new SqlDataSource();
sq.ID = "SqlData";
sq.ConnectionString = ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ToString();
sq.SelectCommand = "Select * from [Table1]";
Page .Controls .Add (sq);
Step-5 : Bind GridView with SqlDataSource object.
Step-6 : Run your application. Code Generate the following output
Now your complete code is
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default4.aspx.cs" Inherits="Default4" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns ="false">
<Columns >
<asp:BoundField HeaderText ="Serial Number" DataField ="int" />
<asp:BoundField HeaderText ="Name" DataField ="name" />
<asp:BoundField HeaderText ="Address" DataField ="address" />
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
public partial class Default4 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
SqlDataSource sq = new SqlDataSource();
sq.ID = "SqlData";
sq.ConnectionString = ConfigurationManager.ConnectionStrings["DatabaseConnectionString"].ToString();
sq.SelectCommand = "Select * from [Table1]";
Page .Controls .Add (sq);
GridView1.DataSource = sq;
GridView1.DataBind();
}
}
}
Comments
Post a Comment