How to get the data from table through ID or Name (SQL to LINQ)
The following code snippet shows you how you can query direct to SQL
Server and in its comparison how you can query using LINQ and
get all data on the basis of ID and Name.
This is the connection string which let you connect to the server:
Data Source = "Your Server Name"
Initial Catalog = "The name of your database"
Integrated Security = "true" for getting your credentials automatic to
your current login account in windows, in this way you don't have to use user
id and password while establishing connection with SQL server.
public static string conString = @"Data Source
= MOAVIA_OSAMA-PC\SQLEXPRESS;Initial Catalog = MyFirst ; Integrated
Security = true";
In SQL we write the following query to select all data from a
particular table, here we are selecting data from table Customer which
contains ID, Name and Address columns in it.
Query Against ID;
string SQLQuery = "SELECT * FROM
Customer WHERE ID = 3";
Query Against Name;
string SQLQuery = "SELECT * FROM
Customer WHERE Name = 'Maryam' ";
Now, we would execute this query and return all table from
database to store in table. The following GetDataTable() function execute the
query and returns the data in table:
public static DataTable GetDataTable(string query)
{
SqlConnection SQLCon = new SqlConnection(conString);
SqlCommand cmd = new SqlCommand(query, SQLCon);
DataTable table = new DataTable();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(table); // and filling the
table against the query
return table;
}
And showing query result in DataGridView:
dataGridView1.DataSource = GetDataTable(SQLQuery);
In LINQ we'll write the queries like that:
The following is the class generated when you add "Linq
to SQL classes" to project, which takes an argument of connection
string:
DataClasses1DataContext dc = new DataClasses1DataContext(conString);
Query Against ID;
var LINQuery =
from Customer c in dc.Customers
where c.ID == 3
select c;
Query Against Name;
var LINQuery =
from Customer c in dc.Customers
where c.Name.Equals("Maryam")
select c;
And showing query result in DataGridView:
dataGridView1.DataSource
= LINQuery;
0 comments:
Post a Comment