In this article we will discuss, How to calculate discount price at runtime binding on gridview using Read() method, which returns true there are rows to read. If there are no more rows to read then it will return false. We will calculating 15% discounted price for the product.
We will be using ProductDetail table
Step 1: Create a table using the following script with data:
CREATE TABLEProductDetail
(
ProductId int identity primary key,
ProductName nvarchar(50),
UnitPrice int
)
INSERT INTOProductDetail VALUES('Lenova',523)
INSERT INTOProductDetail VALUES('Nokia 520',550)
INSERT INTOProductDetail VALUES('Micromax',560)
INSERT INTOProductDetail VALUES('Samsung Galaxy S5',926)
INSERT INTOProductDetail VALUES('Sony',450)
Step 2: Copy and paste the following code.
Default.aspx:
<table style="border: 1px solid #e2e2e2; font-family: Arial">
<tr>
<td style="padding:10px 5px 5px 40px">
<asp:GridView ID="GridView1" runat="server" ></asp:GridView>
</td>
</tr>
</table>
Default.aspx.cs:
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
string ConnString = ConfigurationManager.ConnectionStrings["ShoppingZone"].ConnectionString;
using (SqlConnection connection = new SqlConnection(ConnString))
{
connection.Open();
SqlCommand cmd = new SqlCommand("Select * from ProductDetail", connection);
using (SqlDataReader reader = cmd.ExecuteReader())
{
// Create theDataTable and columns. This will
// be used as thedatasource for the GridView
DataTable datatable = new DataTable();
datatable.Columns.Add("ID");
datatable.Columns.Add("Name");
datatable.Columns.Add("Price");
datatable.Columns.Add("DiscountedPrice");
while (reader.Read())
{
//Calculate the15% discounted price
decimal OriginalPrice = Convert.ToInt32(reader["UnitPrice"]);
decimal discount = OriginalPrice / 15;
decimal DiscountedPrice = OriginalPrice -discount;
// Populatedatatable column values from the SqlDataReader
DataRow datarow = datatable.NewRow();
datarow["ID"] = reader["ProductId"];
datarow["Name"] = reader["ProductName"];
datarow["Price"] = OriginalPrice;
datarow["DiscountedPrice"] = string.Format("{0:0.00}", DiscountedPrice);
//Add the DataRowto the DataTable
datatable.Rows.Add(datarow);
}
GridView1.DataSource = datatable;
GridView1.DataBind();
}
}
}
}
}
Output:
Post your comments / questions
Recent Article
- Import "django.shortcuts" could not be resolved from source in Django Project
- How to add two numbers in Android Studio? | Source Code
- FindViewByID returns null in android studio -SOLVED
- Saving changes is not permitted in SQL SERVER - [SOLVED]
- Restore of database failed. File cannot be restored over the existing. -[SOLVED]
- One or more projects in the solution were not loaded correctly in Visual Studio 2019 | FIXED
- How to find Laptop's Battery Health?
- SOLVED-Related Field got invalid lookup: icontains error in Django
Related Article