Monday, September 17, 2007

Credit Card Payment Processing with ASP.NET

Rick Strahl has published a excellent (and very comprehensive) new article on techniques to perform credit-card payment processing with ASP.NET. He also includes full source code examples (for both ASP.NET 1.1 and ASP.NET 2.0). You can check it out here.

If you are interested in ecommerce, then you should also check out the ASP.NET 2.0 PayPal-enabled Store Starter Kit that you can download for free from here (it is near the middle of the page). It provides a really easy way to get an e-commerce site up and running using ASP.NET 2.0, and has PayPal payment integration built-in.

Data Access Improvements with LINQ to SQL

LINQ to SQL is a built-in OR/M (object relational mapper) in .NET 3.5. It enables you to model relational databases using a .NET object model. You can then query the database using LINQ, as well as update/insert/delete data from it. LINQ to SQL fully supports transactions, views, and stored procedures. It also provides an easy way to integrate business logic and validation rules into your data model. Below are some of the articles I've written that explore how to use it:

Part 1: Introduction to LINQ to SQL
Part 2: Defining our Data Model Classes
Part 3: Querying our Database
Part 4: Updating our Database
Part 5: Binding UI using the ASP:LinqDataSource Control

You'll find that LINQ to SQL makes it dramatically easier to build much cleaner data models, and write much cleaner data code.

What is LINQ?

Microsoft Babies
Microsoft new baby yes I am talking about LINQ stand for Language-Integrated Query is now available as a integral part of Visual Studio Orcas. Microsoft releases the new Visual Studio with the name of Orcas and all Microsoft previous efforts (Windows Communication Foundation WCF, Windows Workflow Foundation WWF, Windows Presentation Foundation WPF, Windows CardSpace and LINQ) are integrated in this Studio. From last one and half years Anders Hejlsberg team done a tremendous job in the overcoming the gap between the data impedance. Mr. Anders team gives a native syntax to developers in the form LINQ to C# and VB.Net for accessing data from any repository. The repository could be in memory object, database (still MS SQL Server only) and XML files.

What is LINQ?
Still lots of folks don’t understand what LINQ is doing. Basically LINQ address the current database development model in the context of Object Oriented Programming Model. If some one wants to develop database application on .Net platform the very simple approach he uses ADO.Net. ADO.Net is serving as middle ware in application and provides complete object oriented wrapper around the database SQL. Developing application in C# and VB.Net so developer must have good knowledge of object oriented concept as well as SQL, so it means developer must be familiar with both technologies to develop an application. If here I can say SQL statements are become part of the C# and VB.Net code so it’s not mistaken in form of LINQ. According to Anders Hejlsberg the chief architect of C#.

“Microsoft original motivation behind LINQ was to address the impedance mismatch between programming languages and database.”

LINQ has a great power of querying on any source of data, data source could be the collections of objects, database or XML files. We can easily retrieve data from any object that implements the IEnumerable interface. Microsoft basically divides LINQ into three areas and that are give below.

LINQ to Object {Queries performed against the in-memory data}
LINQ to SQL (formerly DLinq) {Queries performed against the relation database only Microsoft SQL Server Supported}
LINQ to DataSet {Supports queries by using ADO.NET data sets and data tables}
LINQ to Entities {Microsoft ORM solution}
LINQ to XML (formerly XLinq) { Queries performed against the XML source}

TO Be contd..

VS 2008 and .NET 3.5 Beta 2 Released

I'm very pleased to announce that the Beta 2 release of VS 2008 and .NET 3.5 Beta2 is now available for download. You can download the Visual Studio 2008 product here. You can alternatively download the smaller VS 2008 Express Editions here.
VS 2008 and Visual Web Developer 2008 Express can be installed side-by-side with VS 2005. .NET 3.5 Beta2 also includes a go-live license which allows you to build and deploy applications into production.

Wednesday, September 12, 2007

Building a Custom Database-Driven Site Map Provider

Building a Custom Database Driven Site Map Provider: Scott Mitchell has written a great article on how to implement your own site map provider for ASP.NET that is populated from a database (instead of statically from an XML file).

Sunday, July 15, 2007

Design Time Debugging during server control development in asp.net2.0

Design Time Debugging during server control development in asp.net2.0 in Visual Studio 2005

Rules for better software development

Rules to follow for the whole software development life cycle.You will find rules to follow for Management, Application Design, Website, Communication, Networking, Third Party product, Testing, Documentation etc.

Friday, July 13, 2007

ASP.NET Website Paths

Determining Physical Path of an Application

The MapPath method returns the complete physical path for a virtual path that you pass to the method. For example, the following code returns the file path for the root of your Web site:
String rootPath = Server.MapPath("~");

Client Elements

Elements that are not Web server controls on a page—client elements—are passed through as-is to the browser. Therefore, when referring to a resource from a client element, you construct paths according to standard rules for URLs in HTML. You can use a fully qualified (which is also known as absolute) URL path or various types of relative paths. For example, if your page contains an img element, you can set its src attribute using one of the following paths:

1) An absolute URL path. An absolute URL path is useful if you are referencing resources in another location, such as an external Web site.
img src=""

2) A site-root relative path, which is resolved against the site root (not the application root). Site-root relative paths are useful if you keep cross-application resources, such as images or client script files, in a folder that is located under the Web site root.

This example path assumes that an Images folder is located under the Web site root.
img src="/Images/SampleImage.jpg"

Here, If your Web site is, the path would resolve to the following.

3) A relative path that is resolved against the current page path.
img src="Images/SampleImage.jpg"

4) A relative path that is resolved as a peer of the current page path.
img src="../Images/SampleImage.jpg"

Server Controls

Absolute and relative path references in a server control have the following disadvantages:

i) Absolute paths are not portable between applications. If you move the application that the absolute path points to, the links will break.

ii) Relative paths in the style of client elements can be difficult to maintain if you move resources or pages to different folders.

To overcome these disadvantages, ASP.NET includes the Web application root operator (~), which you can use when specifying a path in server controls. ASP.NET resolves the ~ operator to the root of the current application. You can use the ~ operator in conjunction with folders to specify a path that is based on the current root.

The following example shows the ~ operator used to specify a root-relative path for an image when using the Image server control In this example, the image file is read from the Images folder that is located directly under the root of the Web application, regardless of where in the Web site the page is located.
asp:image runat="server" id="Image1" ImageUrl="~/Images/SampleImage.jpg"

Difference between "==" and "object.equalsto"

What is the difference between "==" and "object.EqualsTo"

"==" Vs "Object.EqualsTo"

'==' only compares the value where as 'object.equalsto' compares the both value as well as type

Both are used for comparison and both returns the boolean value (true/false)

Case 1. In case a and b both are different datatype then also a.Equals(b) can be used to compare but incase of == we cant even compile the code if a and b are different data type

Example1 for "==" Vs "Object.EqualsTo":

int a=0;
string b="o";

//do something

//above code will compile successfully and internally the int b will convert to object type and compare

//do something
//above code will give you the compilation error

Case 2. by using == we cant compare two object but Equals method will able to compare both the object internally

Example 2 for "==" Vs "Object.EqualsTo":
a==b is used to compare references where as a.Equals(b) is used to compare the values they are having.
for e.g

class Mycar
string colour;
Mycar(string str)
colour = str;

Mycar a = new Mycar("blue");
Mycar b = new Mycar("blue");
a==b // Returns false
a.Equals(b) // Returns true

Thursday, July 12, 2007

Acropolis is around the corner

If you are working with the CAB (Composite UI Application Block) or the SCSF (Smart Client Software Factory), you should check out Acropolis. If you are not using CAB or SCSF but you need to develop Windows applications, you should take a look at Acropolis too!

Acropolis has just been announced by Brad Abrams and others. It's supposed to be the integration of ideas and concepts from CAB and SCSF into Visual Studio.

Acropolis is an initial “experiment” at up leveling the .NET Framework application model to enable more modular application that enables developers to focus on their business logic while reaping the benefits of Xaml and WPF and of course carrying forward all of your existing Windows Forms assets.

Acropolis builds on the rich capabilities of Microsoft Windows and the .NET Framework, including Windows Presentation Foundation (WPF), by providing tools and pre-built components that help developers quickly assemble applications from loosely-coupled parts and services. With Acropolis you will be able to:

Quickly create WPF enabled user experiences for your client applications.
Build client applications from reusable, connectable, modules that allow you to easily create complex, business-focused applications in less time.
Integrate and host your modules in applications such as Microsoft Office, or quickly build stand-alone client interfaces.
Change the look and feel of your application quickly using built-in themes, or custom designs using XAML.
Add features such as workflow navigation and user-specific views with minimal coding.
Manage, update, and deploy your application modules quickly and easily.
Acropolis requires Visual Studio 2008 (Orcas) Beta 1. The first preview can be downloaded here. Acropolis also has a home page, where you'll be able to find an introduction video.
At first sight, Acropolis looks very different from the CAB and SCSF.

WebService Books Catalogue

XML and Web Services Unleashed
XML, Web Services, and the Data Revolution
Professional XSL
Professional XML Meta Data
Professional XML Schemas
XML Programming Using the Microsoft XML Parser
Web Services Essentials
XML .NET Developer's Guide
Professional XML for .NET Developers
Programming Web Services with SOAP
Architecting Web Services

Programmatically accessing Tracing info in Asp.Net 2.0

For enabling Tracing we normally Tweak the config file right....

But in 2.0 you can do a bit more...

void Page_Load (object sender, EventArgs e)
Trace.TraceFinished +=
new TraceContextEventHandler (TraceHasFinished);

void TraceHasFinished (object sender, TraceContextEventArgs e)
foreach (TraceContextRecord traceContextRecord in e.TraceRecords)
Response.Write (traceContextRecord.Category + "
Response.Write (traceContextRecord.Message + "
//..... Do your bits .......
//...Write as XML....
//....Or Write to Database....Up to you....

How cool is that! you have now programmatic access. Just register to the event TraceFinished of the TraceContext class and loop through the e.TraceRecords.

The new 7 Wonders!!

The Taj Mahal, Agra
At a glittering ceremony in Lisbon held on 07-07-07, the world inherited a brand new list of seven wonders.
This list was not put together by an ancient historian.
Or a Greek scholar aeons ago.
It was created by all of us across the world when we participated in a massive online and SMS campaign!.
Come and meet the seven new wonders of the world:

Commissioned by Mughal emperor Shah Jahan in memory of his wife Mumtaz Mahal, who died giving birth to their 14th child, the Taj Mahal was completed in 1648.
One thousand or more elephants lent their heft to the 16-year project. Workmen, sculptors and artists came from Turkey, Syria, Baluchistan, Persia and Bukhara to work on the Taj.
The marble was sourced from Rajasthan, the jade and crystal from China, the lapis lazuli from Afghanistan, the sapphires from Sri Lanka, the turquoise from Tibet and the carnelians from Arabia.
Nearly every inch of the entire 55-metre high Taj Mahal is decorated.
Dubbed a masterpiece of world heritage by UNESCO, Rabindranath Tagore called the Taj 'a tear on the face of eternity.'
Some facts you probably didn't know:
· During World War II a scaffolding was built around the Taj to protect it from possible Japanese bombing. Scaffolding was again erected during the 1965 and 1971 India-Pakistan wars.
· By the First War of Independence in 1857 the Taj was in a state of disrepair. Lord Curzon, the British Viceroy at the turn of the 20th century, ordered it refurbished. He had the lawns redone in a more manicured British manner; originally the gardens were full of fruit trees and flowers like daffodils and roses.
· More than three million people visit the Taj each year.

The Coliseum, Rome

The Leaning Tower of Pisa didn't even make the semi-finals, but the solitary Roman representative was one of the first monuments to get a confirmed spot on the list of new seven wonders of the world.
Some facts you probably did not know:
· If Roman emperor Nero did indeed order the Christians to be fed to the lions, as it has been recorded with not total certainty, then the persecution would have happened in this amphitheatre. It is believed that after Rome was destroyed by a huge fire, Nero, who was considered unstable, blamed the fire on the Christians and had them punished.
· The Coliseum, work on which was begun in 72 BC by Emperor Vespasian, took about 10 years to complete.
· Now a crumbling magnificent edifice that adds majesty to downtown Rome, it could seat 50,000 in its heyday. · The Coliseum was used for 500 years. Games, re-staging of battles, hunts, animal fights and executions were all held here. Apparently 9,000 animals were killed during its inauguration.

The Great Wall of China

The Chinese call the Great Wall -- which runs along the border of Mongolia from the Shanhai Pass to Lop Nur -- Wanli Changcheng which mean the long wall of 10,000 Li (a Chinese unit of length).
Some facts you probably did not know:
· It is the longest man-made structure in the world measuring 4,000 miles. Mao Zedong once remarked, 'You are not a real man if you have not climbed the Great Wall.'
· The Great Wall of China was built by the Ming dynasty to defend its borders from marauding Mongols.
· The wall was not successful in keeping out the Manchus, who hailed from Manchuria, and mounted several invasions on the Ming empire. They finally infiltrated through the wall at the Shanhai Pass in 1644 by bribing a Ming general and took control of Beijing. Thus began the Quing rule of China
· The wall is the biggest military installation on the planet. It amazingly scales lofty mountains and plunges back down into steep valleys.
· The largest number of guards are posted at the Badaling portion of the wall to guard Beijing.
· The Great Wall of China, it is claimed, is visible from spacecraft orbiting the earth.

Christ the Redeemer, Rio de Janeiro

The statue of Christ, which was unveiled in 1931 and is locally called Cristo Redentor, has become a symbol for the city of Rio.
It is 125 feet high and stands on the 2,300 ft Corcovado hill, which along with Sugar Loaf mountain towers over Rio harbour.
Some facts you probably did not know:
· The statue weighs 1,000 tonnes.
· French sculptor Paul Landowski, who created 35 statues for Paris, designed the Cristo Redentor.
· On the day of its inauguration the lights were meant to be turned on by legendary inventor Guglielmo Marconi from his yacht close to Naples, Italy, using radio technology. That plan failed and the lights were switched on from the hill in Rio.

Machu Picchu, Peru

The ancient citadel of the Incas -- also called the Lost City of the Incas -- is perched 7,900 feet above in the mountain jungles of the Andes, near the Amazon basin. It is considered one of the most mysterious sights in the world. And it is man-made.
For nearly 500 years it remained hidden.
It was built around 1450 AD very close to the Inca capital. Hardly 50 years later, the Inca kingdom was conquered by Spanish adventurers. Machu Picchu for some reason escaped the notice of the Spaniards and the jungle swallowed it up. It was re-discovered by American explorer Hiram Bingham in 1911.
Some facts you probably did not know:
· In 1913, National Geographic magazine, which funded Bingham's expedition, dedicated an entire issue to Machu Picchu.
· Peru's top tourist site is not faring well under the tourist stampede and UNESCO has deemed it at risk. · Bingham, a professor at Yale university, was led to Machu Picchu by a local who knew of its existence. It is believed a missionary duo had discovered the site a decade or so earlier.

Chichen Itza, Mexico
This famous and sacred Mayan site, located in the Yucatan peninsula in southern Mexico, is about one thouand years old and showcases the Mayan-Toltec civilisation. The Kukulcan temple, also called El Castillo and the Temple of the Warriors, are both focal points of Chichen Itza.
Some facts you probably did not know:
· The word Chichen Itza means at the mouth of the well of the Itza, which seems to indicate its location near a limestone swallow hole (depression filled with water).
Petra, Jordan
The Nabataean ruins, carved in the steep rocks at Petra, lie in a valley between the Dead Sea and the Gulf of Aqaba.
Once the capital of a sect of cave-dwelling Semites, who spoke Aramaic, located on an early caravan route to Gaza, the Persian Gulf and Damascus, Petra was a flourishing city.
Some facts you probably did not know:
· Petra was also called Rekem and is mentioned in the Dead Sea scrolls (the 850-odd Hebrew documents that pre-date the Bible and give knowledge of that era).
· The people who lived here had special knowledge of water engineering and used special drainage systems, cisterns for water storage and dams to protect their capital from the habitual suddden floods that occurred.

Wednesday, July 11, 2007

ASP.NET User Control Development

A Crash Course on ASP.NET Control Development: Design-Time Features and Capabilities

Turning an .ascx User Control into a Redistributable Custom Control

How to get different date formats in SQL Sever

How can we gets date in different formats

Here are examles:

SELECT CONVERT(CHAR(8),GETDATE(),101) -- 07/10/20
SELECT CONVERT(CHAR(20),GETDATE(),100) -- Jul 10 2007 12:23PM
SELECT CONVERT(CHAR(15),GETDATE(),102) -- 2007.07.10
SELECT CONVERT(CHAR(15),GETDATE(),103) -- 10/07/2007
SELECT CONVERT(CHAR(15),GETDATE(),104) -- 10.07.2007
SELECT CONVERT(CHAR(15),GETDATE(),105) -- 10-07-2007
SELECT CONVERT(CHAR(15),GETDATE(),106) -- 10 Jul 2007
SELECT CONVERT(CHAR(15),GETDATE(),107) -- Jul 10, 2007
SELECT CONVERT(CHAR(10),GETDATE(),108) -- 12:17:50
SELECT CONVERT(CHAR(20),GETDATE(),109) -- Jul 10 2007 12:21:27
SELECT CONVERT(CHAR(15),GETDATE(),110) -- 07-10-20
SELECT CONVERT(CHAR(15),GETDATE(),111) -- 2007/07/10
SELECT CONVERT(CHAR(15),GETDATE(),112) -- 20070710
SELECT CONVERT(CHAR(20),GETDATE(),113) -- 10 Jul 2007 12:20:36

Hope this helps..

Asp.Net Tools for Developers

Fiddler HTTP Debugger - HTTP debugging proxy
Lutz Roeder's .NET Reflector - .NET assembly browser, explorer, analyser and decompiler
FxCop - . NET best-practice code analyser
C# Snippet Compiler - Lightweight C# code snippet compiler
Sysinternals DebugView - Monitors debug output on a local or remote computer
WinMerge - Visual text file differencing and merging tool
GhostDoc - Visual Studio add-in that automatically generates XML documentation
CopySourceAsHtml - Visual Studio add-in that copies syntax-highlighted code to the clipboard as HTML
NUnit - Unit-testing framework for .NET
SQL Prompt - IntelliSense style auto-completion for SQL Server

Enterprise Library June 2005 Instrumentation Issue

Enterprise Library June 2005 Instrumentation Issue

I got this error in one of the site that I am recently when i did my installation ( win 2000, .Net 1.1) Access to performance data was denied to ASPNET as attempted from C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_wp.exe Access to performance data was denied to ASPNET as attempted from C:\WINNT\Microsoft.NET\Framework\v1.1.4322\aspnet_wp.exe System.TypeInitializationException: The type initializer for "Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataConnectionFailedEvent" threw an exception. ---> System.Security.SecurityException: Requested registry access is not allowed. at Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable) at System.Diagnostics.EventLog.CreateEventSource(String source, String logName, String machineName, Boolean useMutex) at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category, Byte[] rawData) at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID, Int16 category) at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type, Int32 eventID) at System.Diagnostics.EventLog.WriteEntry(String message, EventLogEntryType type) at Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.PerformanceCounterInstances.ReportCounterFailure(String message) at Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.PerformanceCounterInstances..ctor(String categoryName, String counterName, Boolean createNewInstance) at Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.InstrumentedEvent.AddPerformanceCounter(String category, String[] counterNames, Boolean createNewInstance) at Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.InstrumentedEvent.Initialize(String counterCategory, String[] counterNames, Boolean createNewInstance, String eventLogSource, EventLogIdentifier[] eventIds) at Microsoft.Practices.EnterpriseLibrary.Common.Instrumentation.InstrumentedEvent..ctor(String counterCategory, String[] counterNames, Boolean createNewInstance, String eventLogSource, EventLogIdentifier[] eventIds) at Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataServiceEvent..ctor(String[] counterNames, EventLogIdentifier[] eventLogIds) at Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataConnectionFailedEvent..ctor(String[] counterNames, EventLogIdentifier[] eventLogIDs) at Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataConnectionFailedEvent..cctor() --- End of inner exception stack trace --- at Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataConnectionFailedEvent.Fire(String connectionString) at Microsoft.Practices.EnterpriseLibrary.Data.Instrumentation.DataInstrumentationFacade.ConnectionFailed(String connectionString) at Microsoft.Practices.EnterpriseLibrary.Data.Database.OpenConnection() at Microsoft.Practices.EnterpriseLibrary.Data.Database.ExecuteReader(DBCommandWrapper command) at Abn.DataAccessLayer.SqlClient.SqlCancerTypeProviderBase.GetAll(TransactionManager transactionManager, Int32 start, Int32 pageLength) at Abn.DataAccessLayer.Bases.CancerTypeProviderBase.GetAll() at Abn.Facade.AbnOncologyFacade.GetAllCancerType() at AbnWebApplication.OncologySearchPage.LoadCancerType() at AbnWebApplication.OncologySearchPage.Page_Load(Object sender, EventArgs e) at System.EventHandler.Invoke(Object sender, EventArgs e) at System.Web.UI.Control.OnLoad(EventArgs e) at System.Web.UI.Control.LoadRecursive() at System.Web.UI.Page.ProcessRequestMain() After doing some googling found couple of direction to solve the problem. Thought I should post all the link for future reference.;en-us;329291

This was giving a hard time even after assigning permission to the registry and following most the resolutions suggested in the above links etc. But at the end rebooting the server probably did the trick and things started working as expected.

Sunday, July 08, 2007

Sharepoint Resources

In Addition to the links that posted previously

Here are some more useful links Source:

Free SharePoint Web Parts (3rd Party)
ActiveX Scripting Web Part (Simon Mourier)
AD Management Web Part (Fabian)
Alert Manager, Subweb Viewer Web Parts (Mart Muller)
Avail Lists & Libraries (Sig Weber)
Blogparts (Steen Molberg)
Breadcrumb Site Navigation Web Part
Calculator & User Control Container Web Parts
Calendar Web Part (Custom)
cBlog (custom site def by Collutions)
Chart Web Part (Microsoft)
CheckPermsContent 1.0 (Stramit)
cMySites (Collutions)
Connected Page Viewer Web Part (Todd)
Countdown Web Part (P. Schaeflein)
cPageViewer (Collutions)
CSeg - SharePoint List Rollup (csegRollUp version 2)
cseg Search 1.2 (Google-like)
cseg Web Part Suite
csegAlerts user manager alerts webpart
csegMiniWiki for SharePoint csegRollUp 3.1 (the sharepoint aggregator)
cSegSmallCalendar Web Part
CSS Class Inspector Web Part
Date Time Web Part
DocLib Quick Launch (P. Schaeflein)
Document Library Browser v1.2 (Stramit)
Drop Down Navigator (McPherson)
Dynamic Page Viewer Web Part (B. Mixon)
Easy Tabs Web Part Events for You Web Part
Feed Reader (Smiling Goat)
Finder Web Part (McPherson)
Flash Movie, DocLib Utils/Explorer, FeedReader, My Workspaces Web Parts (SmilingGoat)
FlexListViewer: Display other Site lists w/o FrontPage GhostHunter Web Part (bluedoglimited) Google Search Web Part (Mark Wagner)
Hello Web Part
Image Upload Webpart (P. Schaeflein)
Image Web Part (FluidNature)
InfoPath Viewer (CSeg)
Inspector Web Part (bluedoglimited)
InstantFX SE MP3 Player Maker
Jan Tielens' SmartPart
Jan's Essential Web Parts (Navigation, MyAlerts, Breadcrumbs, WhatsNew)
Konrad Brunner - UGS's Web Parts (broken link 8/25)
ListCharts by Jesper Halvorsen
Macaw Discussion Board
Macaw TraceInfo Web Part (Victor Vogelpoel)
Microsoft Dynamics CRM 3.0 List Web Part [MSFT]
Microsoft Office Live Meeting 2005 Web Parts
Milestone Countdown Web Part
My Alerts Web Part (via Brightwork - Registration Required)
My Sub Webs (Microsoft) New Window for List Items (Todd's Content Editor Web Part) News/Group Listings/List Items Scroller Web Part (Ted Teng) News/Listing Paging Script (Ted Teng)
Office 2003 Add-in: Web Parts and Components (v2 - 10/17/2005)
People Picker Web Part Portal Area Listings Rollup and RSS Syndicator Web Part (Tony Bierman)
Program's Unlimited - Calendar Webpart
Quick Launch Web Part (Bob Mixon)
Rate this Page Webpart (Microsoft)
Remote Desktop Webpart (Microsoft)
Reporting Services Web Parts (Bryant Likes) (rss)
Rights Checking Content Editor WebPart (RCCEWebPart by Tariq)
SharePoint Forums Web Part (Simser)
SharePoint List Browser/Copier
SharePoint List XML Viewer Utility
SharePoint Recycle Bin - Client Side Alternative (Todd)
SharePoint Recycle Bin 1.0 New & Improved SharePoint RSS/ATOM reader
SharePoint Scrollable Listings
SharePoint User List & Sample Web Part Code (Ingeborg Struijk)
SharePoint Web Part Code Snippets for VS 2005
SharePoint Web Parts for Microsoft Applications (10)
SharePointCustomization's Webparts
Sig Weber's Playground of Web Parts
SmartPart Sample: WSS Cross Site Search SmartPart User Controls
SPPageToolBar (James Milne's DVWP)
SPS Area Listings Rollup / RSS Syndication Web Part
Style Viewer Web Part StyleUnderCursor Web Part (T. Bleeker)
Subwebs On The Quick Launch (DVWP) Syndication Generator - Bluedoglimited (Maurice) Tree Menu Web Part for SPS/WSS (gotdotnet)
Upload via FrontPage RPC
Web Part ToolKit (BlueDogLimited )
What's New Web Part (Fitz)
Who's Online Web Part (HowTO by Bryant Likes)
WikiSharePoint version 1.0 (TamTam)
Windows Folder Web Part
Windows Folder Web Part
Windows SharePoint Services RSS (WSS-RSS)
Wrap Up Web Part Yazan's List Manager

Office 2007
Office "12" bloggers list
Office 2007 Links Galore (JOPX)
Content Type Technical Posters for Download
Bill Gates - SharePoint Conference 2006
2007 Microsoft Office System Beta 2
2007 Office System Reference Material

MOSS Tools
MOSS Business Data Catalog (BDC) MetaData Manager

SharePoint Tools
80-20 Compliance Server Beta (Records Management)
Active Directory Migration Tool v3.0
Adobe PDF Icon (Handy)
Audio Video IFilter - WMA, WMV, MP3 IFilter for Microsoft Indexing Service
Auto-Deployment of Sharepoint WebParts
CAML Editor by cSeg
CAML Query Builder and Execution Tool (U2U)
CAML Viewer 1.0 (Stramit)
cPassword (Collutions)
DAVCopy (Maurice)
Developer Project Kick Start for SharePoint Document Recovery Tool (Free from Stephane Cordonnier - Unsupported by MS)
Event Handler - JPEG Parser Free iFilters!
Free ifilters!!! (
IE Web Developer Accessories
iFilter Explorer (By Citeknet)
IntelliSense XML Files
James Milne's SharePoint CSS Skinner!
Log Parser 2.2
Lutz Roeder's Reflector
M. Greth's Password Changer (registration required)
Microsoft Application Center Test (ACT)
Microsoft Baseline Security Analyzer V1.2.1 (Mar 05)
Microsoft Baseline Security Analyzer v2.0 (for IT Professionals)
Microsoft Content Management Server 2002 Connector for SharePoint Technologies
Microsoft Office Information Bridge Framework 1.5 Resource Kit
Microsoft Office SharePoint Portal Server deployment
Microsoft SQL Server Report Pack for Microsoft Office SharePoint Portal Server 2003
MSG iFilter
MSXML 4.0 Service Pack 2 (Microsoft XML Core Services)
Nigel Bridgeport's User Manager
Nigel's SPUM2003 X1.1 - (V1.0 will be SPUser.EXE)
Office Business Scorecards Accelerator
Office Web Components
Outlook Power Tool for SharePoint (By WinApp - Registration Required)
ReGhost.NET - (A Ghost Hunter Alternative for SharePoint)
ReGhost.NET (Alternative for ReGhosting)
Report Pack Source Code - GotDotNet Workspace
RSS for WSS 2.02 (D. Larson)
SharePad Reference Application for SharePoint Products and Technologies
SharePoint Advanced Search Tools (SAST)
SharePoint Alerts Report (French)
SharePoint BlogExtension (Maurice)
SharePoint Builder (SharePoint XML editor by B Simser)
SharePoint Configuration Analyzer v1.0
SharePoint Database Explorer & SPExport (J Edelen)
SharePoint Database Split
SharePoint Discovery Wizard (Quest)
Sharepoint Documents Mover (Mohamed Zaki)
SharePoint Explorer
SharePoint Import Export tools and other utilities
SharePoint Portal Area Explorer
SharePoint Portal Server 2003 Discovery Kit
SharePoint Portal Server 2003 Sample: Back Up and Restore
SharePoint Portal Server 2003 Word Breaker Update
SharePoint Portal Server 2003: IntelliSense XML Files
SharePoint Query Builder Tool
SharePoint RSS/ATOM reader
SharePoint Site Collection Backup Script
SharePoint Site Manager (Permissions Mgmt)
SharePoint Site Permissions Manager
SharePoint Site Reports (gotdotnet)
SharePoint Site Template Language Converter
SharePoint Site Templates (30 New Templates!)
SharePoint Utility Suite 2.0
SharePoint Utility Suite 2.5 (K.Richie)
SharePoint/Visual Studio 2005 Web Part template project
SharePointFav 1.1 (updated)
Software Update for Web Folders
SPS Cross Forest People Picker
SPS Portal 2003 Search Web Service Tester
SPS2003 Search Web Service Tester (Travis)
spsbulkupload (Stuart Preston)
SPSReport Utility (Ryan Rogers)
SPSStatus 1.1 (Broken Link Detector by J. Milne)
SPUserUtil 2.1 (By KRICHIE)
SQL Report Pack for SharePoint (gotdotnet)
SQL Server 2005 Report Pack
SyncToy for Windows XP
Usage Event Logging in Windows SharePoint Services
Visio IFilter 2003 Add-in: Text Search in Visio Files
Visio Template for Designing SharePoint Sites
Web Part Manager (gotdotnet)
Web Part Package Installer
Web Part Templates for Microsoft Visual Studio .NET
Web Part Templates for Visual Studio .NET
Web Site Test Tools and Site Management Tools
Windows Server 2003 Performance Advisor
Windows SharePoint Services: Document Library Event Handler Toolkit
Windows SharePoint Services: Usage Blob Parser
WPPackager for Packaging and Deploying Web Parts
WSS Language Template Pack
WSS Site List Details Utility FWP (Ian Morrish) (rss)
WSS URL Zone Administration Utility (T. Starr, MSFT)

SDKs & Guides
Backing Up and Restoring Web Sites
Be Prepared: A Guide to SharePoint Disaster Prevention and Recovery
BizTalk Server 2004 Installation Guide
Content Management Server 2002 Connector for SharePoint Evaluation Guide
Developing Web Parts for SharePoint Portal Server 2003 in .NET
FabriKam – The Microsoft Office System Solutions Learning Platform
InfoPath 2003 SDK
Microsoft Alerts Version 6.0 Software Development Kit
Microsoft Solution Accelerator for Intranets
Microsoft Windows SharePoint Services Help
Office Business Scorecards Accelerator Admin Guide
Planning and Designing for Geographically Dispersed Sites
SharePoint Portal Server 2003 Administrator's Guide
SharePoint Portal Server 2003 Discovery Kit
SharePoint Portal Server 2003 SDK (ver.Jan05)
SharePoint Portal Server Backup SPSBACKUP (By DanielD & Translated from German by Babelfish)
SharePoint Portal Server Backup STSADM (By DanielD & Translated from German by Babelfish)
SharePoint Site Creation - Step-by-Step (
SharePoint/SQL Server 2005 and .NET 2.0 whitepaper SQL Server 2005 System Views Poster The Secure Access Using Smart Cards Planning Guide
The Strong Name Key Pair Using Wppackager to Package and Deploy Web Parts
Windows SharePoint Services Administrator's Guide (1/20/2006)
Windows SharePoint Services SDK (ver.Mar05)

SharePoint Service Packs
Security Update for Windows SharePoint Services (KB887981)
SharePoint Portal Server 2003 Service Pack 1
SharePoint Portal Server 2003 Service Pack 2 (10/18/05)
Windows SharePoint Services Service Pack 1
Windows SharePoint Services Service Pack 2 (9/27/05)
WSS 2.0 SP2 Beta in Windows Server 2003 R2
WSS Language Template Pack SP2 (Requires WSS SP2)

HowTo's and Tips
HowTO: Import User Profile Information of Enabled User Accounts from Active Directory to SPS 2003
HOWTO: Access WebPart Maintenance
HowTO: Setup Alerts for Portal Home Page Listings & Taxonomy Changes!
HowTo: Using LogParser 2.2 from the IIS resource kit
HowTo: Schedule backup with SPS Data Backup and Restore Utility
HowTo: Find out what version of SharePoint are you running
HowTo: Increase the 255 Character Limit in Doc Libs
HowTo: What Version of SharePoint is Running?
HowTo: Hide the Quick Launch Bar
HowTo: BreadCrumbTrail for SPS Areas (By Manuel)
HowTo: Technical SharePoint (and .NET) Fundamentals
HowTo: Dealing with Orphaned Sites
HowTo: SharePoint Stress Testing
HowTo: Build a SharePoint Newsletter Generator
HowTo: Synchronize document libraries with SyncToy 1.0
HowTo: Retain Lookup Column Data During List Migration
HowTo: Conduct Team-Based Development of WSS and SPS Apps
HOWTO: Use Virtual PC's Differencing Disks to your Advantage
HowTo: SharePoint Impersonation (via Todd Bleeker)
HowTo: SharePoint Impersonation (via Lois & Clark)
HowTo: SharePoint Impersonation (via Maurice)
Installing Business Scorecard Manager with SQL Server 2005
Tips from working on the SharePoint Force
Context Menus WSS 2003
HowTo: Extend WSS Logging
HowTo: Using VS2005 with SharePoint Forms-Based Authentication Solutions for WSS/SPS HowTo: Testing SharePoint Alerts in a Test Environment
SuperGeek Tip: Open off-site links in a new window
FrontPage 2003 and SharePoint Portal Server 2003 Caveats!
Tips for using Virtual PC
HowTo: Setting up your SharePoint Virtual Development Environment
Looking at Web Parts with Visual Studio 2005
More About Web Parts with ASP 2.0
Synchronizing a Remote Windows SharePoint Services Site via FrontPage
Using FrontPage 2003 to view Windows SharePoint Services usage data.
HowTo: Implementing the IDesignTimeHtmlProvider Interface
HowTo: Master Advanced List Editing in SharePoint
HowTo: Wrapping Web Controls into a Web Part
Performance Impact Results SQL Server 2000 vs SQL Server 2005 w/ SPS2003 SP2 Deployment and Customization Best Practices for Windows SharePoint Services
WSS Organizational Issues White Paper
WSS Step by Step
Opening Creating and Copying SharePoint Sites
WSS Advanced Design Techniques
SharePoint Impersonation using Com+ / Discussion of Methods
ASP.NET 2.0: Development Resources and Security Guidance
HowTo: Using a URL parameter to filter a Data View Web part
How To: Microsoft IT Manages SharePoint Disaster and Recovery
HowTo: Move SharePoint Subwebs using Smigrate
HowTo: Step/Step - Updating a WSS List from c#
HowTo: Create Your First C# Web Service

SharePoint Resources (Microsoft)
SPS 2003 - HowTo's & WhitePapers
SharePoint Webcasts
SharePoint Resource Kit Chapters
SharePoint Portal Server Technical Library
SPS 2003 - Microsoft "One Stop Shop Link Fest"
Microsoft Office System Solutions Learning Platform - FabriKam
Microsoft Solution Accelerator for Intranets
Office Business Scorecards Accelerator Support Resources
SharePoint Administrator Documentation and Resources
Free Site Templates from Microsoft
Creating Custom Web Part Page Templates Sample
SPS 2003 Training Kit
SharePointPSSearch SQL Syntax (Preview)
Spreadsheet WP Solution Specification File Schema Reference
SharePoint Downloads
Using CMS 2002 Connector for SharePoint
SharePoint Case Studies (Microsoft)
MSDN SharePoint Presentations
Forrester Report (2005) - Microsoft Leading the way in Portal Popularity

SharePoint Resources (Non-MS)
4 Guidelines to Drive SharePoint User Adoption
Brien Posey's SharePoint KB Articles
Commercial Listing of Web Parts (by JOPX)
Developing Web Parts for SharePoint Portal Server 2003 in .NET
GotDotNet - SharePoint archived posts
GotDotNet - SharePoint Tips/Samples/Webcasts
Heather Solomon's SharePoint Resource Page
Heather Solomon's Site Definition Mappings
Lamont's SharePoint Resources
Making SharePoint Webparts Interact
SharePoint Tips/Tricks/Resources (WorldWideWeb.DK)
SharePoint University (Community Forums) Webcasts
Ted Pattison Group Tips/Sample Code
WSS FAQ - Documents and Sites Resource
WSS FAQ - Home