save pdf in database c# : Creating bookmarks pdf Library SDK class asp.net .net wpf ajax ASPNETWebPagesWithRazorSyntax-Book9-part628

ASP.NET Web Pages Using The Razor Syntax 
Chapter 5 – Working with Data 
87 
The code runs a SQL statement that deletes the specified record and then redirects the user 
back to the listing page. 
5.
Run ListProductsForDelete.cshtml in a browser. 
6.
Click the Delete link for one of the products. The DeleteProduct.cshtml page is displayed to 
confirm that you want to delete that record. 
7.
Click the Delete button. The product record is deleted and the page is refreshed with an 
updated product listing. 
Connecting to a Database 
You can connect to a database in two ways. The first is to use the 
Database.Open
method and to specify 
the name of the database file (less the .sdf extension): 
var db = Database.Open("SmallBakery");
The 
Open
method assumes that the .sdf file is in the website’s App_Data folder. This folder is designed 
specifically for holding data. For example, it has appropriate permissions to allow the website to read 
and write data, and as a security measure, WebMatrix does not allow access to files from this folder. 
The second way is to use a connection string. A connection string contains information about how to 
connect to a database. This can include a file path, or it can include the name of a SQL Server database 
on a local or remote server, along with a user name and password to connect to that server. (If you keep 
data in a centrally managed version of SQL Server, such as on a hosting provider's site, you always use a 
connection string to specify the database connection information.) 
In WebMatrix, connection strings are usually stored in an XML file named Web.config. As the name 
implies, you can use a Web.config file in the root of your website to store the site's configuration 
information, including any connection strings that your site might require. An example of a connection 
string in a Web.config file might look like the following: 
<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
<connectionStrings> 
<add 
name="SQLServerConnectionString" 
Creating bookmarks pdf - add, remove, update PDF bookmarks in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Your C# Project with Rapid PDF Internal Navigation Via Bookmark and Outline
create pdf bookmarks from word; add bookmarks to pdf
Creating bookmarks pdf - VB.NET PDF bookmark library: add, remove, update PDF bookmarks in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Empower Your VB.NET Project with Rapid PDF Internal Navigation Via Bookmark and Outline
create pdf bookmarks; export pdf bookmarks to excel
ASP.NET Web Pages Using The Razor Syntax 
Chapter 5 – Working with Data 
88 
connectionString= "server=myServer;database=myDatabase;uid=username;pwd=password" 
providerName="System.Data.SqlClient" /> 
</connectionStrings> 
</configuration>
In the example, the connection string points to a database in an instance of SQL Server that's running on 
a server somewhere (as opposed to a local .sdf file). You would need to substitute the appropriate 
names for 
myServer
and 
myDatabase
, and specify SQL Server login values for 
username
and 
password
. (The 
username and password values are not necessarily the same as your Windows credentials or as the 
values that your hosting provider has given you for logging in to their servers. Check with the 
administrator for the exact values you need.) 
The 
Database.Open
method is flexible, because it lets you pass either the name of a database .sdf file or 
the name of a connection string that's stored in the Web.config file. The following example shows how 
to connect to the database using the connection string illustrated in the previous example: 
@{ 
var db = Database.Open("SQLServerConnectionString"); 
}
As noted, the 
Database.Open
method lets you pass either a database name or a connection string, and 
it'll figure out which to use. This is very useful when you deploy (publish) your website. You can use an 
.sdf file in the App_Data folder when you're developing and testing your site. Then when you move your 
site to a production server, you can use a connection string in the Web.config file that has the same 
name as your .sdf file but that points to the hosting provider's database — all without having to change 
your code. 
Finally, if you want to work directly with a connection string, you can call the 
Database.OpenConnectionString
method and pass it the actual connection string instead of just the 
name of one in the Web.config file. This might be useful in situations where for some reason you don't 
have access to the connection string (or values in it, such as the .sdf file name) until the page is running. 
However, for most scenarios, you can use 
Database.Open
as described in this chapter. 
Additional Resources
SQL Server Compact 
Connecting to a SQL Server or MySQL Database in WebMatrix 
C# Create PDF Library SDK to convert PDF from other file formats
Gratis control for creating PDF from multiple image formats such as tiff, jpg, png Create and save editable PDF with a blank page, bookmarks, links, signatures
convert excel to pdf with bookmarks; adding bookmarks to pdf document
VB.NET Create PDF Library SDK to convert PDF from other file
Gratis control for creating PDF from multiple image formats such as tiff, jpg, png Create and save editable PDF with a blank page, bookmarks, links, signatures
export bookmarks from pdf to excel; how to bookmark a page in pdf document
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
89 
Chapter 6 
Displaying Data in a Grid 
This chapter explains how to use a helper to display data in an HTML table (in a grid). 
What you'll learn: 
How to display data in a web page using the 
WebGrid
helper. 
How to format the data that's displayed in the grid. 
How to add paging to the grid. 
These are the ASP.NET programming features introduced in the chapter: 
The 
WebGrid
helper.  
The WebGrid Helper 
In the previous chapter, you displayed data in a page by doing all the work yourself. But there's also an 
easier way to display data — use the 
WebGrid
helper. The helper can render an HTML table for you that 
displays data. The helper supports options for formatting, for creating a way to page through the data, 
and for letting users sort just by clicking a column heading. 
Displaying Data Using the WebGrid Helper 
This procedure shows you how to display data in a 
WebGrid
helper by using its simplest configuration. 
1.
Open the website you created for Chapter 5 - Working with Data.  
If you didn't run the procedures in that chapter, you don't need to run all of them now. 
However, you do need the SmallBakery.sdf database file that's created at the beginning of 
Chapter 5. This file must be in the App_Data folder of the website you're working with. 
2.
In your website, create a new CSHTML file named WebGridBasic.cshtml.  
3.
Replace the existing markup with the following: 
@{ 
var db = Database.Open("SmallBakery") ; 
var selectQueryString = "SELECT * FROM Product ORDER BY Id"; 
var data = db.Query(selectQueryString); 
var grid = new WebGrid(data); 
<!DOCTYPE html> 
<html> 
<head> 
<title>Displaying Data Using the WebGrid Helper</title> 
</head> 
<body> 
XDoc.Word for .NET, Advanced .NET Word Processing Features
Viewing, editing, converting, processing, creating, annotating and zooming & rotation; Outlines, bookmarks, & thumbnail Create Word from PDF; Create Word from
bookmark template pdf; create pdf with bookmarks from word
How to C#: Basic SDK Concept of XDoc.PDF for .NET
annotation features can be integrated into your C# project, such as annotation creating, deleting, modifying This class describes bookmarks in a PDF document
adding bookmarks to pdf reader; auto bookmark pdf
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
90 
<h1>Small Bakery Products</h1> 
<div id="grid"> 
@grid.GetHtml() 
</div> 
</body> 
</html>
The code first opens the SmallBakery.sdf database file and creates a SQL 
Select
statement: 
SELECT * FROM Product ORDER BY Id
A variable named 
data
is populated with the returned data from the SQL 
Select
statement. The 
WebGrid
helper is then used to create a new grid from data: 
var data = db.Query(selectQueryString); 
var grid = new WebGrid(data);
This code creates a new 
WebGrid
object and assigns it to the 
grid
variable. In the body of the 
page, you render the data using the 
WebGrid
helper by using this code: 
@grid.GetHtml()
The 
grid
variable is the value you created when you created the 
WebGrid
object. 
4.
Run the page. (Make sure the page is selected in the Files workspace before you run it.) The 
WebGrid
helper renders an HTML table that contains the data selected based on the SQL 
Select
statement: 
Notice that you can click column names to sort the table by the data in those columns. 
As you can see, even using the simplest possible code for the 
WebGrid
helper does a lot of work for you 
when displaying (and sorting) the data. The helper can do quite a bit more as well. In the remainder of 
this chapter, you'll see how you can configure the 
WebGrid
helper to do the following: 
VB.NET PDF: Basic SDK Concept of XDoc.PDF
features can be integrated into your VB.NET project, such as annotation creating, deleting, modifying This class describes bookmarks in a PDF document.
pdf bookmark editor; excel pdf bookmarks
PDF Image Viewer| What is PDF
such as text extraction, hyperlinks, bookmarks and metadata as version among a suite of PDF-based standards to develop specifications for creating, viewing, and
how to bookmark a pdf file in acrobat; how to add bookmarks on pdf
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
91 
Specify which data columns to display and how to format the display of those columns. 
Style the grid as a whole. 
Page through data. 
Specifying and Formatting Columns to Display 
By default, the 
WebGrid
helper displays all the data columns that are returned by the SQL query. You can 
customize the display of this data in the following ways: 
Specify which columns the helper displays, and in what order. You might do this if you want to 
display only a subset of the data columns that are returned by the SQL query. 
Specify formatting instructions for how data should be displayed — for example, add a currency 
symbol (like "$") to data that represents money. 
In this procedure, you'll use 
WebGrid
helper options to format individual columns.  
1.
In the website, create a new page named WebGridColumnFormat.cshtml. 
2.
Replace the existing markup with the following: 
@{ 
var db = Database.Open("SmallBakery") ; 
var selectQueryString = "SELECT * FROM Product ORDER BY Id"; 
var data = db.Query(selectQueryString); 
var grid = new WebGrid(data); 
<!DOCTYPE html> 
<html> 
<head> 
<title>Displaying Data Using the WebGrid Helper (Custom Formatting)</title> 
<style type="text/css"> 
.product { width: 200px; font-weight:bold;} 
</style> 
</head> 
<body> 
<h1>Small Bakery Products</h1> 
<div id="grid"> 
@grid.GetHtml( 
columns: grid.Columns( 
grid.Column("Name", "Product", style: "product"), 
grid.Column("Description", format:@<i>@item.Description</i>), 
grid.Column("Price", format:@<text>$@item.Price</text>) 
</div> 
</body> 
</html>
This example is like the previous one, except that when you render the grid in the body of the 
page by calling 
grid.GetHtml
, you're specifying both the columns to display and how to display 
them. The following code shows how to specify which columns to display and the order in which 
they should be displayed: 
How to C#: Basic SDK Concept of XDoc.PowerPoint
Conversely, conversion from PDF to PowerPoint (.PPTX C# project, such as annotation creating, deleting, modifying This class describes bookmarks in a PowerPoint
split pdf by bookmark; pdf create bookmarks
How to C#: Basic SDK Concept of XDoc.Word
Conversely, conversion from PDF to Word (.docx) is C# project, such as annotation creating, deleting, modifying This class describes bookmarks in a Word document
bookmark pdf documents; how to create bookmark in pdf with
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
92 
@grid.GetHtml( 
columns: grid.Columns( 
grid.Column("Name", "Product", style: "product"), 
grid.Column("Description", format:@<i>@item.Description</i>), 
grid.Column("Price", format:@<text>$@item.Price</text>) 
)
To tell the helper which columns to display, you must include a 
columns
parameter for the 
GetHtml
method of the 
WebGrid
helper, and pass in a collection of columns. In this collection, you 
can specify each column to include. You specify an individual column to display by including a 
grid.Column
object, and pass in the name of the data column you want. In this example, the 
code causes the 
WebGrid
object to display only three columns: Name, Description, and Price. 
(These columns must be included in the SQL query results — the helper cannot display columns 
that were not returned by the query.) 
However, notice that in addition to just passing a column name to the 
grid
, you can pass other 
formatting instructions. In the example, the code displays the Name column using the following 
code: 
grid.Column("Name", "Product", style: "product")
This tells the 
WebGrid
helper to do the following: 
Display values from the Name data column. 
Use the string "Product" as the column heading instead of the default name for the heading 
(which in this case would be "Name"). 
Apply the CSS style class named "product". In the example page markup, this CSS class sets a 
column width (200 pixels) and a font weight (bold). 
The example for the Description column uses the following code: 
grid.Column("Description", format:@<i>@item.Description</i>)
This tells the helper to display the Description column. It specifies a format by using an 
expression that wraps the value from the data column in some HTML markup: 
@<i>@item.Description</i> 
The example for the Price column shows another variation of how to specify the 
format
property: 
grid.Column("Price", format:@<text>$@item.Price</text>)
This again specifies some HTML markup to render, and adds a dollar sign ($) before the column 
value. 
3.
View the page in a browser. 
How to C#: Basic SDK Concept of XDoc.Excel
Conversely, conversion from PDF to Excel (.XLSX) is also C# project, such as annotation creating, deleting, modifying This class describes bookmarks in a Excel
export excel to pdf with bookmarks; excel hyperlink to pdf bookmark
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
93 
You see only three columns this time. The Name column customizes the column heading, size, 
and font weight. The Description column is in italics, and the Price column now includes a dollar 
sign. 
Styling the Grid as a Whole 
In addition to specifying how individual columns should be displayed, you can format the whole grid. To 
do so, you define CSS classes that specify how the rendered HTML table will look. 
1.
In the website, create a new page named WebGridTableFormat.cshtml. 
2.
Replace the existing markup with the following: 
@{ 
var db = Database.Open("SmallBakery"); 
var selectQueryString = "SELECT * FROM Product ORDER BY Id"; 
var data = db.Query(selectQueryString); 
var grid = new WebGrid(source: data, defaultSort: "Name"); 
<!DOCTYPE html> 
<html> 
<head> 
<title>Displaying Data Using the WebGrid Helper (Custom Table 
Formatting)</title> 
<style type="text/css"> 
.grid { margin: 4px; border-collapse: collapse; width: 600px; } 
.head { background-color: #E8E8E8; font-weight: bold; color: #FFF; } 
.grid th, .grid td { border: 1px solid #C0C0C0; padding: 5px; } 
.alt { background-color: #E8E8E8; color: #000; } 
.product { width: 200px; font-weight:bold;} 
</style> 
</head> 
<body> 
<h1>Small Bakery Products</h1> 
<div id="grid"> 
@grid.GetHtml( 
tableStyle: "grid", 
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
94 
headerStyle: "head", 
alternatingRowStyle: "alt", 
columns: grid.Columns( 
grid.Column("Name", "Product", style: "product"), 
grid.Column("Description", format:@<i>@item.Description</i>), 
grid.Column("Price", format:@<text>$@item.Price</text>) 
</div> 
</body> 
</html>
This code builds on the previous example by showing you how to create new style classes (
grid
head
grid th
grid td
, and 
alt
). The 
grid.GetHtml
method then assigns these styles to various 
elements of the grid using the 
tableStyle
headerStyle
, and 
alternatingRowStyle
parameters. 
3.
View the page in a browser. This time, the grid is displayed using different styles that apply to 
the table as a whole, such a banding for alternating rows. 
Paging Through Data 
Rather than displaying all the data in the grid at once, you can let users page through the data. For the 
small quantity of data that you're working with here, paging isn't very important. But if you've got 
hundreds or thousands of data rows to display, paging is very handy. 
To add paging to the rendered grid, you specify an additional parameter for the 
WebGrid
helper. 
1.
In the website, create a new page named WebGridPaging.cshtml. 
2.
Replace the existing markup with the following: 
@{ 
var db = Database.Open("SmallBakery"); 
var selectQueryString = "SELECT * FROM Product ORDER BY Id"; 
var data = db.Query(selectQueryString); 
var grid = new WebGrid(source: data, 
defaultSort: "Name", 
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
95 
rowsPerPage: 3); 
<!DOCTYPE html> 
<html> 
<head> 
<title>Displaying Data Using the WebGrid Helper (with Paging)</title> 
<style type="text/css"> 
.grid { margin: 4px; border-collapse: collapse; width: 600px; } 
.head { background-color: #E8E8E8; font-weight: bold; color: #FFF; } 
.grid th, .grid td { border: 1px solid #C0C0C0; padding: 5px; } 
.alt { background-color: #E8E8E8; color: #000; } 
.product { width: 200px; font-weight:bold;} 
</style> 
</head> 
<body> 
<h1>Small Bakery Products</h1> 
<div id="grid"> 
@grid.GetHtml( 
tableStyle: "grid", 
headerStyle: "head", 
alternatingRowStyle: "alt", 
columns: grid.Columns( 
grid.Column("Name", "Product", style: "product"), 
grid.Column("Description", format:@<i>@item.Description</i>), 
grid.Column("Price", format:@<text>$@item.Price</text>) 
</div> 
</body> 
</html>
This code expands the previous example by adding a 
rowsPerPage
parameter when creating the 
WebGrid
object. This parameter lets you set the number of rows that are displayed. By including 
this parameter, you automatically enable paging. 
3.
View the page in a browser. Notice that only three rows are shown. At the bottom of the grid, 
you see controls that let you page through the remaining data rows.  
ASP.NET Web Pages Using The Razor Syntax 
Chapter 6 – Displaying Data in a Grid 
96 
Additional Resources 
Chapter 5 - Working with Data 
Chapter 7 - Displaying Data in a Chart 
ASP.NET Web Pages with Razor Syntax Reference 
Documents you may be interested
Documents you may be interested