jump to navigation

Working with Data in ASP.NET 2.0 8 April 2007

Posted by Ahmed Abdul Moniem in Web Application Development.
1 comment so far

Introduction

Basic Reporting

Master/Detail

Custom Formatting

Editing, Inserting, and Deleting Data

Paging and Sorting

Custom Button Actions

Displaying Data with the DataList and Repeater

Filtering Scenarios with the DataList and Repeater

Editing and Deleting Data Through the DataList

Paging and Sorting with the DataList and Repeater

Custom Button Actions with the DataList and Repeater

Accessing the Database Directly from an ASP.NET Page

Enhancing the GridView

Working with Binary Files

Caching Data

Database-Driven Site Maps

Working with Batched Data

Advanced Data Access Scenarios

List Of Useful Programs To Developers 15 September 2006

Posted by Ahmed Abdul Moniem in General Articles.
1 comment so far

This list will be updatable if your comments will contain other useful programs not included.


Source Control Programs:

The goal of the Subversion project is to build a version control system that is a compelling replacement for CVS in the open source community. The software is released under an Apache/BSD-style open source license.

And you can download last version from here

And see this for a comparison between different source control programs

And you can download subversion book from here

==============================

The coolest Interface to (Sub)Version Control

And you can download it from here


Issue/Bug Tracking Programs:

Trac is an enhanced wiki and issue tracking system for software development projects. Trac uses a minimalistic approach to web-based software project management. Our mission; to help developers write great software while staying out of the way. Trac should impose as little as possible on a team’s established development process and policies.

And you can download it from here

==============================

Mantis is a web-based bugtracking system. It is written in the PHP scripting language and requires the MySQL database and a webserver. Mantis has been installed on Windows, Mac OS, OS/2, and a variety of Unix operating systems. Almost any web browser should be able to function as a client. It is released under the terms of the GNU General Public License (GPL).

And you can download it from here


Unit Test Programs:

You can know more about unit testing from here

NUnit is a unit-testing framework for all .Net languages. Initially ported from JUnit, the current production release, version 2.2, is the fourth major release of this xUnit based unit testing tool for Microsoft .NET. It is written entirely in C# and has been completely redesigned to take advantage of many .NET language features, for example custom attributes and other reflection related capabilities. NUnit brings xUnit to all .NET languages.

And you can download it from here

==============================

NCover provides statistics about your code, telling you how many times each line of code was executed during a particular run of the application. The most common use of code coverage analysis is to provide a measurement of how thoroughly your unit tests exercise your code. After running your unit tests under NCover, you can easily pinpoint sections of code that are poorly covered and write unit tests for those portions. Code coverage measurement is a vital part of a healthy build environment.

And you can download it from here


Project/Task Management Programs:

 

dotProject is a volunteer supported Project Management application. There is no “company” behind this project, it is managed, maintained, developed and supported by a volunteer group and by the users themselves.

 

And you can download it from here

 


Code Analysis Programs:

FxCop is a code analysis tool that checks .NET managed code assemblies for conformance to the Microsoft .NET Framework Design Guidelines. It uses reflection, MSIL parsing, and callgraph analysis to inspect assemblies for more than 200 defects in the following areas:

  • Library design
  • Localization
  • Naming conventions
  • Performance
  • Security

FxCop includes both GUI and command line versions of the tool.

 

And you can download it from here


Naming Guidelines 14 September 2006

Posted by Ahmed Abdul Moniem in General Articles.
add a comment

A consistent naming pattern is one of the most important elements of predictability and discoverability in a managed class library. Widespread use and understanding of these naming guidelines should eliminate many of the most common user questions. This topic provides naming guidelines for the .NET Framework types. For each type, you should also take note of some general rules with respect to capitalization styles, case sensitivity and word choice.

Capitalization Styles
Describes the Pascal case, camel case, and uppercase capitalization styles to use to name identifiers in class libraries.
Case Sensitivity
Describes the case sensitivity guidelines to follow when naming identifiers in class libraries.
Abbreviations
Describes the guidelines for using abbreviations in type names.
Word Choice
Lists the keywords to avoid using in type names.
Avoiding Type Name Confusion
Describes how to avoid using language-specific terminology in order to avoid type name confusion.
Namespace Naming Guidelines
Describes the guidelines to follow when naming namespaces.
Class Naming Guidelines
Describes the guidelines to follow when naming classes.
Interface Naming Guidelines
Describes the guidelines to follow when naming interfaces.
Attribute Naming Guidelines
Describes the correct way to name an attribute using the Attribute suffix.
Enumeration Type Naming Guidelines
Describes the guidelines to follow when naming enumerations.
Static Field Naming Guidelines
Describes the guidelines to follow when naming static fields.
Parameter Naming Guidelines
Describes the guidelines to follow when naming parameters.
Method Naming Guidelines
Describes the guidelines to follow when naming methods.
Property Naming Guidelines
Describes the guidelines to follow when naming properties.
Event Naming Guidelines
Describes the guidelines to follow when naming events.

Step-By-Step Windows Application Development 12 September 2006

Posted by Ahmed Abdul Moniem in Windows Application Development.
4 comments

In this category “Windows Application Development” we will be concerned ONLY in developing some windows applications using C# 2005 mainly.

This post is the start of this category and I hope to hear from you some ideas to windows applications to develop here step-by-step in this section and all the source code will be supplied to my blog visitors for free and may be it will be licensed using GPL license.

So, I am waiting for your ideas and I hope it will effective and creative ….

Note:
All the applications which will be developed will walk on these guide lines step-by-step:
1- Project Life Cycle
2-N-Tier Application Development with Microsoft.NET

Step-By-Step Web Application Development 12 September 2006

Posted by Ahmed Abdul Moniem in Web Application Development.
7 comments

In this category “Web Application Development” we will be concerned ONLY in developing some web applications using ASP.NET 2.0 and C# 2005 mainly.

This post is the start of this category and I hope to hear from you some ideas to web applications to develop here step-by-step in this section and all the source code will be supplied to my blog visitors for free and may be it will be licensed using GPL license.

So, I am waiting for your ideas and I hope it will effective and creative ….

Note:
All the applications which will be developed will walk on these guide lines step-by-step:
1- Project Life Cycle
2-N-Tier Application Development with Microsoft.NET

N-Tier Application Development with Microsoft.NET 12 September 2006

Posted by Ahmed Abdul Moniem in General Articles.
7 comments

This series of articles is very useful to understand the concept of N-Tier Application Development. It was written by Karim Hyatt on Belgum MSDN.

Part 1 : What is N-Tier Architecture?
Part 2 : How to implement the Business Layer?
Part 3 : How to implement the Data Layer?

Also in future, I will try to publish new articles from books or web about this issue.

Project Life Cycle 11 September 2006

Posted by Ahmed Abdul Moniem in General Articles.
add a comment

The development life cycle of a project involves three phases:

◆ Project initiation
◆ Project execution
◆ Project deployment

In the project initiation phase, a comprehensive list of tasks to be performed is prepared, and responsibilities, depending upon individual skills, are assigned to team members. I will be discussing the tasks that need to be performed when I proceed with the coding of the application.

In the project execution phase, the development team develops the application.This
phase consists of the following stages:

◆ Analyzing requirements

Analyzing requirements is the process of determining and documenting customer’s needs and constraints. Subsequently, based on these requirements, you create a plan for developing the application. The process of analyzing requirements often starts with a problem statement given by a customer or the customer’s representative. Analysts organize all the information gathered from the customer and analyze the customer’s needs.Finally, they prepare a written description of the customer’s problem and define a possible solution.

◆ Creating high-level design

The second stage in the project execution phase is to develop a high-level design. In the high-level design phase, the external characteristics of the system, such as interfaces, are designed. In addition, in this phase, the operating environment and various subsystems and their input and output are decided. In this stage, features that require user input or approval from the client are documented, and client approval is obtained for the same. These documents include the functional specifications document of the application, which is presented in a simple language to the client. The functional specifications include the description of the databases, forms, and reports that will be included in the application.

◆ Creating low-level design

In the low-level design phase, a detailed design of the software modules, based on the high-level design, is produced. In addition, the team lays down specifications for various software modules of an application. Modules defined in the high-level design phase are used to create a detailed structure of a system. The system contains subsystems, which are partitioned into one or more design units or modules. In the low-level design phase, the flow of the different modules in the project and the interactions between various interfaces are defined.

◆ Construction

In the construction phase, different software modules are built.This phase uses the output of the low-level design to produce software components. During the construction phase, task responsibilities are assigned to team members. Some team members may need to design and develop an interface, while the others may be required to write the code for database connectivity and business rules.

◆ Integration and testing

The integration of different modules and testing are conducted during the integration and testing phase. The quality assurance (QA) team validates whether the functional requirements, defined in the requirements document, are met. The development team also submits a test case report to the QA team so that the application that the development team has created can be tested in various possible scenarios.

◆ User acceptance testing

In the user acceptance phase, based on the predefined acceptance criteria, the client conducts acceptance testing of the project. In this phase, the acceptance criteria include the fulfillment of all the requirements identified during the requirements analysis phase.

The final stage in the project life cycle is the project deployment phase. In this stage,
the application is deployed at the client location, and support is provided to the
client for a specified period. In addition, any bugs identified in the application are
debugged. This phase consists of the following two stages:

◆ Implementation

The system is installed and made operational in a production environment. The implementation phase is initiated after the system has been tested and accepted by the client. This phase continues until the system operates in a production environment.

◆ Operation and maintenance

In the operations and maintenance phase, software is monitored for performance in accordance with user requirements. In addition, the modifications that are required are incorporated in the software. Operations continue as long as a system can effectively adapt to an organization’s needs. However, when modifications or changes are identified, the system may re-enter the planning phase.

Note: This article is a summary from “Microsoft C# Professional Projects” Book [ISBN: 1-931841-30-6]