Microsoft has developed and released Application Blocks for Data Access and Exception Management for using in .NET applications. These application blocks provide the .NET developer not only the ready to use code inside the application, but also the code which was built by encapsulating the best practices by Microsoft.
In this discussion we are going to examine the following:
- What are the advantages of Data Access Application Block?
- How to install the Data Access Application Block?
- Create a sample .NET application using the Data Access Application Block.
Advantages of Data Access Application Block
Microsoft has developed this wrapper on top of the ADO.NET layer by encapsulating the performance and memory management related best practices for Microsoft SQL Server. So we need not worry about the data access performance and memory leaks.
This comes as a single assembly with a class consisting of useful methods which serve all kinds data access requirements. By using these simple calls in our code, we can reduce the amount of custom code we actually write in our conventional applications. Moreover we can also skip the over head of testing and maintenance of our custom code.
Microsoft provides the source code files, along with the Quick start samples and documentation. We can use the source code as it is or we can even customize as per our application needs.
Installing the Data Access Application Block
This is a free software and you can download it from here.
The current version of this block is 2.0. And we need to have Visual Studio. NET installed on the target machine.
Your installation should create an entry in the Start > Programs > menu called “Microsoft Application Blocks for .NET”, where it will show links to source code and samples.
Fig 1: After installing the Application Block.
Select the Data Access Application Block option by navigating to the path shown in the figure. It then opens the solution in the VS.NET IDE.
Fig 2: Open the Data Access Application Block solution in the IDE.
Click on the SQLHelper.cs file to look inside the code. It creates a namespace with the name
Microsoft.ApplicationBlocks.Data with two sealed classes
SqlHelperParameterCache created inside that.
Now right click on the project name and click Build. Now you should see the assembly created at the following path:
C:\Program Files\Microsoft Application Blocks for .NET\Data Access v2\Code\CS\Microsoft.ApplicationBlocks.Data\bin\Debug
So we have built the Data Access block assembly, now we create a Web Application in which we refer this assembly. In our web application, we use a simple web form to connect to SQL Server 2000 and access the data from the database.
Create a sample .NET application using Data Access Block.
Step 1: Select File > New > Project from the file menu, select the ASP.NET Web Application and enter the project name and path accordingly.
Fig 3: Creating a sample web application.
Step 2: Now we add the Data Access Block to our project. To do this, right click on the references node and click Add Reference. Click on the Browse and select the Microsoft.ApplicationBlocks.Data.dll and click Ok button.
Fig 4: Adding the Data Access Block reference.
Step 3: Open the WebForm1 and drag a
datagrid from the toolbox onto it.
Fig 5: Adding the
datagrid to the WebForm1.
Step 4: Add the line for using the Data Access Block assembly.
Fig 6: Using
Step 5: Add the following code in the
Page_Load event procedure.
This code creates a connection to the SQL Server database.
We have used the
ExecuteDataset static method of the
SqlHelper class to fetch the top 10 records from Employees table.
Fig 7: Call
In the above code, I have used my own credentials for connecting SQL Server. Please change those accordingly.
Step 6: Run the WebForm1.aspx page in the browser to see the output.
Fig 8: Result displayed in WebForm1.aspx
In this discussion I have tried my best in exploring the Data Access Block with a simple example. Try to explore other useful methods available in
SqlHelper which serve for variety of data access purposes. For wide information on this topic, visit microsoft.com.