Themes and Skins in Visual Studio 2005 ASP.NET 2.0

Tuesday, January 30, 2007

ASP.NET 2.0 provides rich support for Themes which help in defining consistent look and feel across multiple pages in a web application. One of the file types that you could create within the definition of a theme is a “skin” file. After creating a theme folder in the web application, you can create a skin file by adding a new item and selecting the type as “Skin”. You can add definitions of commonly used server controls in the skin file. When the theme is attached to a web page, all controls declared within the page will inherit the formatting you specified in the skin file.

Look at the sample code snippet below. I have declared these “templates” within a skin file under my theme named “TestTheme” and I have specified this theme in the Page directive of each web page in the application.

---------------------- In the skin file --------------------------------------

<asp:Button runat="server" Font-Bold="true" />

<asp:TextBox runat="server" BackColor="Aquamarine"/>

---------------------- In the ASP.NET page --------------------------------------

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="ThemeTester.aspx.vb" Inherits="ThemeTester" EnableTheming="true" Theme="TestTheme" EnableViewState="true" Trace="false" TraceMode="SortByTime"%>

At runtime, the definitions of ASP Button (with font-bold as true) would be applied to all ASP buttons in the page. This makes the ASPX coding lot simpler.

User And Search Engine Friendly Website Design

User Friendly And Search Engine Friendly Website Design
by: 5FISH Web Design

Designing a website is much more important than creating an attractive image of a web page. Of course your website is an important part of your online business. The homepage on your web site is very important. A professionally designed website is the key to successful converse to your prospective clients about your products or services. Launching a quality web site is an absolute must for an online business web site. Web Site Design specifically for the business people from small to large business, and acts as a key to develop a website to meet their business objectives. Web designing in a website attracts buyers, also creates interests and alters the internet browsers as consumers. Website owners should also ensure that the web designing is a most common way that charms and creates interest in viewers to view and move through your website. Web Designing is also plays an essential roll in a marketing campaign to bring your business into the general public notice and into a new productive business environment.

In online business, if a businessman wants his website to stand out to the visitors; one can make this happen by utilizing a web design to his website which is unique and different from all others. Mainly he has to choose the precise web designing and the web design options carefully. Choosing a web design also provides a valuable introduction to the design fundamentals at work in all well-designed Web sites. Web designing is also said to be known as a navigating tool to a website.Web designing focus on creating attractive, welcoming and with cutting edge designs to create the right image for a business can be formed to a website.

Choosing a color to your website should be one of your first concerns when it comes time to start your web site designing. The color which you are choosing for your website design should be selected after a careful consideration. Excellently web designed websites must have good color, graphics, animation and sound. Graphic is a key tool in web designing, graphically designed website or a webpage will be a glowing and pleasing sight to the consumers. Animation and sound when united with the web designing acquires a well-liked and accessible place to a website.

Choosing a Good Web designing company is a key factor in designing a user friendly and search engine friendly website.

About The Author

5FISH is a well-known web design company in Muskoka It also offers services like web development, Search engine optimization and website hosting in Canada.


What Is RSS?

What Is RSS?
by: Madison Lockwood

RSS is technology - a simple software program - that allows you to access web and blog content automatically. The acronym's most popular translation is "Really Simple Syndication. Once your browser or computer has an RSS reader on board, you can subscribe to any number of RSS "feeds." A feed is simply a way in which a reader may subscribe to website content - most commonly blogs or news sites. A news site, for example, may list their latest headlines or entire articles in their feed every time a new article is published. A blog would publish this feed as a series of recent posts.

Feeds are published by millions of publishers, from small individuals to large organizations like Newsweek. The value of a feed is that it brings the most current site content to you in a format that is easily scanned; further, you are spared the task of visiting each source site each day. This is typically done through the use of what is called an 'aggregator' or 'feed reader'.

Feed readers or RSS readers, are software programs that run on your computer (or PDA or phone); let you easily subscribe to feeds, and allow you to read through them efficiently. Some are relatively simple, showing the headline and summary. The fancier ones often work with (or in) your browser to make viewing the material look much like the source page. Once you have a reader on your computer, subscribing to a feed with is an easy click or drag from your browser. Sites that provide RSS feeds will usually have a button for that purpose.

There are several RSS feed formats as well as one with an entirely different methodology called Atom. Atom has become popular with some bloggers and blogging tools. Some aggregators can read both. The other acronyms you will see in "feedspeak" are XML, which stands for 'extensible markup language' and is the code standard for these simple text feeds. An 'OPML" file is a format for indexing hierarchical feed lists. If you dive into this web habit in a big way, your aggregator or reader may keep your subscription list in an OPML file.

An RSS feed is a great method for staying abreast of issues and topics that interest you. There are a number of feed "libraries," so to speak, from which you can learn what's out there in your areas of interest. Google has a built-in reader that makes the subscription process easy, as does Yahoo. Firefox has a downloadable extension for the purpose of aggregating RSS feeds, as well as a default ability to save RSS feeds as "live bookmarks" that update via the RSS feed. You can download a number of stand alone readers and aggregators; you can find them through a simple web search.

The whole RSS "movement" is a step towards utilizing the Internet more efficiently. The trick is to avoid overloading your email inbox with daily reports that you end up ignoring most of the time. For that purpose, there are sites like Feedster that will search millions of RSS feeds for articles that are relevant to your interests. Like any search tool, however, these services are hit and miss. They are still working off keywords and sometimes what they find is relevant, sometimes not. But if you want daily news broken into categories, it's great technology once you learn how to make it work for you.

Disclaimer and Important Links

Friday, January 26, 2007

Here are few good sites for you, these are the directories where you can submit your site and get listed

AddMe - Search Engine Optimization

Cisco warns of router software vulnerabilities

    Businesses are being warned that three Cisco Systems router operating-system vulnerabilities have been discovered.

    The flaws found could enable a malicious individual to commit denial-of-service, or DoS, attacks against Web sites, according to a warning issued by the U.S. Computer Emergency Readiness Team.

    US-CERT's warning about the Cisco IOS issue says a remote attacker would be able to execute code on affected devices.

    Users are being told to upgrade to a fixed version of IOS, which stands for Internetwork Operating System.

    "Cisco is aware of multiple vulnerabilities that may impact Cisco IOS and IOS XR devices, and has published three separate security advisories about them," the network hardware maker said in a statement.

    "In all cases, Cisco has made free software available to address the vulnerabilities for affected customers," the company said. "Cisco is also not aware of any current exploitation of these vulnerabilities."

    Will Sturgeon of reported from London.

    Website Template Guide – Introduction and more!

    Wednesday, January 24, 2007

    Website Template Guide – Introduction and more!

    Q.) What are web templates?

    A.) Web templates are readymade web-pages. They make the job of putting web pages on the internet really quick.

    Q.) How do the templates manage to do it so easily?

    A.) Web templates perform as html coded dummy web pages that carry model content. These templates can be edited with ease and can be customized. You can add content, graphics, logo, pictures etc. to create master web pages in no time.

    Q.) How do I edit web templates?

    A.) That’s very simple! Almost all web templates can be edited. You can use common html editors like FrontPage, DreamWeaver and GoLive along with image editors like Photoshop. These editors are user-friendly and have an easy to use interface. One doesn’t need to be an expert in html editing to use them. But if you want to add minute details and perfect them, opt for template customization services that are offered by most web template providers.

    Q.) But why will I use web templates - does it do me any other good?

    A.) Web templates can in fact lend a fair bit of hand to save lots of money and time. The blend of these two with expertise makes web templates – the best option. A web designer can ask for anything in the range of $50 to $200 for designing a single web-page and he will take 15 days minimum.

    With a web template to create a website, it would come around $40 max and save 12-13 days. Isn’t that a deal? Websites designed with web templates can go live within a day after editing and pasting graphics. Now, you don’t need to be an Einstein to figure out which one is the cost-effective and time-saving option. Do you?

    Q.) What about Flash websites?

    A.) Have you ever been to one of those famed jewelers websites – if you have been you will know how much time they take to open up? With an average time span of 14 secs as attention, not even 5 out of 10 people will wait for them to open up. Designing a flash website costs you money and consumes a lot of your time. This extra time is saved using web templates. But if you are really rigid on getting one, look for the template websites that offer flash website templates of good quality @ low-cost. Insert content and put ‘em up.

    Q.) I need to create a copyrighted website. Help!

    A.) Almost all website template providers offer an option of copyrighted or non-copyrighted templates. The difference is that the copyrighted templates are sold only once. If you buy one, as the owner of the copyrighted template you will get all user rights over it.

    In the case of a non-copyrighted website, the rights of usage are reserved with the template ownership company – which they use over and over again. So in a sense, a copyrighted website is unique as it uses unique copyrighted website templates.

    Q.) All this is very theoretical…just tell me how do I find a quality template?

    A.) There are little things to keep your eyes on.

    Good quality web templates have the following:

    - These web-templates are editable

    - The web templates are 100% compatible with popular html and image editors

    - The coding is uniform and friendly. This means that there is no change in the structure of the template on content or graphic inserts when you customize.

    - The web template should be easy to upload on the web

    - A webpage created by a web template should download in any browser minus hassles

    NOTE: If you buy templates that don’t meet the terms above, sorry but your deal was a bad one. The said web templates are of poor quality.

    Website templates are easy and fun. They give you flexibility and help you host your website.

    There are many good web template providers on the web. Some of the ones I have had memorable experiences are,, and They provide high-quality web templates that are easy on purse and work beautifully.

    Viewstate in ASP.NET 2.0

    All of us know that ViewState has been really cumbersome in ASP.NET 1.1 for large page sizes and contributing to slow performance.

    But in .NET framework 2.0 the ASP.NET 2.0 has some enhancements to state management.

    • ASP.NET 2.0 now has control state to ensure few specific properties of a control are retained across postbacks irrespective of whether ViewState is enabled or not.
    • By setting a property MaxPageStateFieldLength, you can control how big the ViewState can grow after which it would be separated into multiple chunks.
    • We are no longer limited to using SQL Server for database-based session storage mechanism. A custom provider can be created to persist session data to other data stores, such as Oracle.

    ASP.NET version 2.0 retains much of the functionality of ASP.NET version 1.1, including automatic page-state persistence using view state, and database support for session and application state. Additionally, ASP.NET 2.0 adds two new features: view-state chunking and control state.

    Control State

    Sometimes you need to store control-state data in order for a control to work properly. For example, if you have written a custom control that has different tabs that show different information, in order for that control to work as expected, somehow the control needs to know which tab is selected between round trips. The ViewState property can be used for this purpose, but view state can be turned off at a page level by developers, effectively breaking your control. To solve this, the ASP.NET page framework exposes a new feature in ASP.NET version 2.0, called control state.

    The ControlState property allows you to persist property information that is specific to a control and cannot be turned off like the ViewState property. To use control state, your control must call the RegisterRequiresControlState method during initialization and then override the SaveControlState and LoadControlState methods.

    Custom Session-State Management

    By default, session-state values and information are stored in memory within the ASP.NET process. ASP.NET also provides session-state providers that allow you to use a session-state server that keeps session data in a separate process, or you can persist session state data to a SQL database. However, with ASP.NET 2.0, you can create custom session-state providers that allow you to customize how session-state data is stored in your ASP.NET applications. For example, you might consider creating a custom provider for the following reasons:

    • You need to store session-state information in a data source other than SQL Server, such as a Visual FoxPro database or an Oracle database.

    • You need to manage session-state information using a database schema that is different from the database schema used by the providers that ship with the .NET Framework. An example of this would be shopping cart data that is stored with a predefined schema in an existing a SQL Server database for a company or Web site.

    A Closer Look at the iPhone , Video

    Tuesday, January 23, 2007

    Lets have a closer look at the Apple's iphone. Its not just a phone but its the most advanced phone ever made, most advanced internet device and the most advanced iPod made by apple.

    Just watch the video displaying its cool features below.

    So what you think, how is this device???
    I think its simply awesome. Apart from being said as the best phone, music device and an internet device i must say its one of the best multimedia devices too. You can view pictures in it with an ease, just hold them, zoom them with your finger tips and a lot more.

    It will be available at a price of 499$ .

    How to Start Video Blogging?

    Sunday, January 21, 2007

    How to Start Video Blogging?
    by: Kanicen Nichathavan

    Videoblogging is the next generation of posting ideas and products over the internet. Everybody knows about textblogging. Now they use videos for a better way of expression. This form of communication may entail a lot of resources, but it is all worth it. If pictures say a thousand words, videoblogging exceeds that by far.

    A videoblog requires larger disk spaces on websites, a faster server, and a whole new set of programs to support it. Videoblogs can be fed through RSS. This is technology of syndicating your website to other RSS aggregators.

    Videoblogging works with people on the internet expressing their selves. Now if you put this on a business prospective, you are up to a lot of benefits. Think of it as a powerful tool in making showing your prospective customers your line of products or your services. It’s just like showing a commercial all for free. And if you videoblog through RSS, then most probably you are getting your target market.

    People like to see what they are going to buy. Some would like to see proof and be sure that they are getting their money’s worth before shelving their dimes on it. All of us know the influence of a thirty second commercial. The effect of videoblogging is similar to that. You show your product, people watch it. If they like it, they buy it. If you present it good enough, they’ll buy the product even if they don’t need it.

    Now on the web, things are pretty much static, unlike in television in which all are moving. If you post something that is mobile, it would most likely catch attention. Now imaging your product parading in all it’s royalty through videoblog. You’ll get phone call orders in no time.

    If your business is just starting up, you can create a videoblog right at your own home. All you need is your web camera, microphone, video software, and lights. For as long as you know how to use your camera, then you can create a videoblog.

    Invest in a good web camera. The higher its resolution is the better the output. And you like to present your goods in the optimum way so get the best one possible. Make a short story, or just capture your goods in one go. Just make sure you are getting the best profile for each. Get those creativity juices flowing.

    Lights are important in a production. Make sure you illuminate entirely the area you are going to use to create videoblog. The brighter the area, the crispier the images will be. You can also use lighting effects for added appeal to the presentation.

    Should you require sounds for your videoblog, you need a microphone. Record you voice as a voice over for promoting the product and its benefit to consumers. Sounds are as important as videos on a videoblog. It is advisable to make your sound effects as enticing as the video.

    Your video editing software can be any program. You need this to finalize your work. You can add sounds, delete some bad angles, or insert some still pictures in there too. Some programs are user-friendly and can be used even with zero knowledge on video editing. Even simple video editing programs should do the trick. Select your background carefully too. The light affects the presentation so make sure that the background and the light complements each other.

    Videoblogging is a great tool but it also has it downside. It may slow down the computer so other may steer clear of it. Download time may also be time consuming especially if customer is still on a dial- up connection.

    But don’t let those stop you. Let videoblogging be an alternative for you, though it is best to still keep the text and pictures present in your presentation to accommodate all possible viewers of your site.

    Nowadays, the more creative you are in presenting your product to the market, they more you are likely to succeed. Videoblogging offers an interactive way of selling. You involve the customers. You instill in them the advantage of your goods. And at times, those are enough to make a sale.

    About The Author

    Kanicen Nichathavan is the owner of Kanicen's Blog, Kanicen's Blog welcomes everyone who intends to share knowledge, interesting products, ideas and those who want to start Internet Online Business. You will find all kind of Internet Marketing Tools and resources. For Newbie and Internet Marketers this blog will be the best option for lowest prices of all kind of Internet Marketing Tools at

    Visual Studio 2005 : System.Security.Principal new classes

    Saturday, January 20, 2007

    New classes have been added to System.Security.Principal namespace in Visual Studio 2005

    The System.Security.Principal namespace has three new classes in .NET 2.0. They are explained briefly below.

    • SecurityIdentifier: A Windows account is internally represented by OS as a security identifier. The account could be a user account, a group or a computer in the network domain. The SecurityIdentifier class encapsulates the binary representation of the SID.
    • NTAccount: A Windows account in human readable text form
    • IdentityReference: Acts as a base class defining common members for SecurityIdentifier and NTAccount. The class is not creatable by the programmer.

    You can use either a SID or a name to identify windows accounts and can also derive one from the other as shown in the code snippet below.

    //Get the security identifier of currently-logged in user.

    SecurityIdentifier objSecId = WindowsIdentity.GetCurrent().User;

    //Get the corresponding NT Account name.

    NTAccount objNTAccount = (NTAccount) objSecId.Translate(typeof(NTAccount));

    These classes can be used in conjunction with API for controlling ACLs under System.Security.AccessControl namespace.

    Content Management System CMS

    Content Management System CMS
    by: Ruchira Sharma

    Most of the organizations have global visions these days and these aspirations have their ramifications. One of which is creation and management of huge amounts of data. This activity is a time consuming process and requires a huge team of professionals to do so. Content management system, CMS is a system that allows you to organize your data and lets your organization to share, use, retrieve or search the data.

    Content management system, CMS is a software that helps in organizing and facilitating creation of documents and content. This is also referred as a web application that is used to manage web content as well as websites. Generally, the system requires client software for creating and editing the article.

    Content management system consists of two parts - the content management application (CMA) and content delivery application (CDA) the function of CMA is to allow the content writer or the manager without the knowledge of HTML to manage, create, remove or modify the content from a website without involving the webmaster. This information is used by the CDA to update the website. Most of the CMS systems have Web based publishing, revision control, format management along with search, indexing and retrieval of content.

    The web based publishing allows the user to use templates, wizards and other tools while the format management feature allows formatting of different documents like the scanned documents and legacy electronic documents in PDF or HTML documents. The revision control helps in updating the content to a new or an old version along with tracking changes made by others in the files. CMS system also helps in indexing, retrieval and search of content. The user can search the data available with the help of keywords, the CMS system helps in retrieving the data.

    If you want to use the system for the effective management of your websites, Mosaic services provides you with an effective CMS development & Content management system PHP . The competitive rates and services provided by the company will surely benefit your organization. Mosaic services, is a prestigious SEO company with a list of satisfied national & international clientele who vouch for the SEO, Web design & development services provided by the company.

    Visit the site to gain an insight of the organization and the products and services offered by them. The site serves your web design and development needs. The sister sites of the website also offer other advertising and marketing services that can enhance your business future prospects.

    How To Install SharePoint 2007 Beta 2

    How To Install SharePoint 2007 Beta 2
    by: Jason Fortner

    Following are the detailed instructions on how to install SharePoint 2007 Beta 2 on a clean version of Windows 2003. These instructions were done by completing the installation on a Virtual Server 2005 machine that was NOT joined to a domain. I have seen a lot of articles that say the server has to be joined to a domain but that is not a requirement. Below are the detailed installation instructions for SharePoint 2007 Beta 2 on Windows 2003 using SQL Server 2005 on the same machine:

    Install Windows 2003 and update the machine with the latest Services Packs and hotfixes from Microsoft by using the "Windows Update" utility.

    Create a local machine account to run SQL Server and SharePoint with. Make sure that this account is set to be an administrator on the local machine and that it is set to not have the password expire or to change the password on the first login.

    * If you are doing the installation on a server joined to a domain you can use a domain account that is set as an administrator on the local machine

    * To create a new local machine account go to Start and right click on "My Computer". Select "Manage" from the list that appears and the "Computer Management" snap-in appears. Expand "Local Users and Groups" and right click on the "Users" folder. Select "New User" and fill in the appropriate information.

    Insert the SQL Server 2005 into the machine and make sure that "Autoplay" is enabled so the initial installation screen appears.

    From the initial screen select "Choose to Install components"

    Click the "Accept terms" checkbox on the license screen that appears and then click "Next"

    Click "Install" on the next screen that appears.

    Once the process to install "Native Client and Microsoft SQL Server 2005 setup support files" has completed click "Next".

    Scanning of the system hardware will occur next.

    On the screen that appears after the hardware scan is complete click "Next".

    When the system configuration check has completed click "Next".

    On the registration page enter the Name, Company and product key and click "Next".

    Select the components that should be installed.

    You will need SQL Server Database Services, Workstation and Client components; and may want to install Books Online and development tools.

    You can click the "Advanced" button and select the specific components that you would like to install. Click "Next".

    Click "Default instance name" checkbox on the instance name screen and click "Next".

    On the next screen choose what account will run SQL Server 2005. Specify the information for the domain/local account you created earlier to run SQL Server in the appropriate boxes. Make sure the "Use a domain user account" radio button is checked.

    Click SQL server and SQL Server Agent check boxes at the bottom of the screen. Click "Next".

    On the next screen choose to use Mixed Mode authentication. You can change this after the SharePoint setup is complete.

    On the collations screen leave the defaults and click "Next".

    On the "Error and Usage Report Settings" screen leave the defaults and click "Next".

    On the "Ready to Install" screen click "Install".

    The setup process will run and you will see the setup progress screen.

    When the setup completes click "Next". Then click "Finish".

    Set the Sharepoint account that you created earlier, it can be the same account that is used to run SQL Server, to be have Database Creator, sysadmin and security admin rights on SQL server.

    Next install Windows Workflow extensions. You will need to make sure that it is version 3807.7 build or higher.

    The 3807.7 version can be downloaded here:

    You need to make sure that you install the Runtime Components download that is appropriate for your system if you don’t have Visual Studio 2005 installed on your machine.

    Double click on the install file for Windows Workflow.

    Click "Ok" on the license screen that appears.

    Install IIS on the sever and make sure ASP 2.0 is installed on IIS. If you are not sure you can run the aspnet_regiis –I from within the 2.0 folder. The default install location is C:\windows\Microsoft.NET\Framework\V2.0.50727.

    * To install IIS on the server go to the "Control Panel" and double click on "Add\Remove Programs". Click on "Add/Remove Windows Components" and in the window that appears check the box next to "Application Server".

    Highlight "Application Server" and click on the "Details" button. Make sure that the check boxes next to "ASP .NET" and "Internet Information Services (IIS)" are checked. Click OK and then click "Next".

    Insert the SharePoint 2007 Beta 2 disk into the server.

    If the disk doesn't autoplay, run setup.bat on the disk.

    Enter the product key on the appropriate screen. Click "Continue".

    Click the check box that you except the terms of use. Click "Continue".

    You will need to choose if you are going to install SharePoint 2007 as standalone single server, this will install SQL Desktop Express, or the advanced version which can be for a single server or a server farm.

    You will need SQL Server 2000 SP3 or SQL Server 2005 for the Advanced version. We will do the advanced version in this process on SQL Server 2005. Click "Advanced".

    On the next screen you can choose from three options. We will be installing on a single server and SQL Server 2005 so we will choose the first options "Complete – Intall all components. Can add servers to form a SharePoint farm." because the last option will install the desktop database engine which we don’t want to install. On the file location tab you can pick the installation location on the server.

    Click "Install Now".

    Make sure the "Run the SharePoint Products and Technologies Configuration Wizard now." is checked and click "Close".

    When the Configuration Wizard appears click "Next".

    Click "Yes" on the pop-up window that appears about restarting services on the server.

    Click the "No, I want to create a new server farm" as we don’t have an existing 2007 SharePoint installation.

    On the Specify Configuration Database settings screen specify the name of the server. If you used above the options above in the SQL Server setup this will be the name of the server you are installing SharePoint 2007 on.

    Leave the configuration database name as it is.

    Enter the username and password of the account that you created earlier in the setup process.

    Click "Next".

    Leave the default options on the screen that appears and click "Next".

    On the next screen that appears click "Next".

    Sharepoint will then complete 9 configuration tasks.

    Once the tasks are completed you will be redirected to the Sharepoint Administration page.

    Click to install Sharepoint 2007.doc to download the word document version of these instructions.

    SharePoint 2007 New Feature Overview

    SharePoint 2007 New Feature Overview
    by: Jason Fortner

    Sharepoint 2007 is in Beta 2 now and is projected to be released at the beginning of the year but now is the time to start looking at the new features that SharePoint 2007 and WSS V3.0 will contain.

    Below are some of the highlights of the new features that SharePoint 2007 and WSS V3.0 will contain.

    Site columns provide a central, reusable model for column definition.

    When you create a site column, each list that uses this column has the same definition, and you do not have to do the tedious work of reproducing the column in each list. Additionally, site columns provide you with the simplicity of a single maintenance point. For instance, you can create a status site column, which may contain multiple choices of an enterprise's specific statuses, and implement the column in dozens of project master lists across the site collection. If you add a new status, you can modify the site column instead of having to modify each list that contains a status column.

    Content types are a core concept used throughout the functionality and services offered in Microsoft Windows SharePoint Services (version 3) and are designed to help users organize their SharePoint content in a more meaningful way. A content type is a reusable collection of settings you want to apply to a certain category of content.

    Content types enable you to manage the metadata and behaviors of a document or item type in a centralized, reusable way. For example, consider the following two types of documents: software specifications and legal contracts. You might want to store documents of those two types in the same SharePoint document library. However, the metadata you would want to gather and store about each of these document types would be quite different. In addition, you would likely want to assign different workflows and retention policies to the two types of documents. Content types enable you to store multiple types of content in the same SharePoint library or list. In the preceding example, you could define two content types, named Specification and Contract. Each content type would include different columns for gathering and storing item metadata and would have different workflows and policies. Yet items of both content types could be stored in the same SharePoint document library.

    Recycle bins, or undelete functionality, is another important improvement that has been added in Microsoft Windows SharePoint Services (version 3). This functionality is available in both lists and document libraries. Deleting an item from a list triggers a multilevel series of events. First, the item is sent to a Web-level recycling bin. From here, the item can be undeleted by any individual who has been given appropriate rights. When the item is deleted from this bin, the item is sent to a second recycling bin, controlled by the site administrator.

    Among the design features of this bin are timers that allow you to automate the removal of old documents. For example, an administrator may decide that the vast majority of requests for item restores happen within the first 90 days. In this scenario, the administrator may set the timer such that items older than 90 days are permanently deleted.

    RSS has become a standard way of aggregating content from the Web. For more information on RSS in Microsoft Windows Code Name "Longhorn," see the technical article RSS Support in Longhorn on Microsoft Developer Network (MSDN). By integrating RSS feeds for each SharePoint list, Microsoft Windows SharePoint Services (version 3) provides a push mechanism for forwarding information to end users.

    Folders, one of the popular features from document libraries in Microsoft Windows SharePoint Services (version 2), is now also available in lists. Folders allow further segregation of content within a single list, adding another level of versatility. One of the interesting features of folders is the ability to assign metadata to a folder. This creates a rich content holder that contains child content, while appearing as more than a container. Essentially, this allows the folder to function as a separate, but fully functional, item type. An example of this can be seen in Windows SharePoint Services discussion boards. Each top-level discussion is, in fact, a folder with metadata, containing one to n child objects. By modifying the appearance of the folder, an end user can visualize the folder as another list item rather than as a container. You can use this model in custom lists to create a dynamic parent/child list. Many business applications require rich container objects, for which a parent object has both important data concerning itself, and one to n children with similar data. Normally, you deal with this challenge by using lists in which a parent, or master, list selection drives the display of a child, or detail, list.

    Because you can now assign metadata to folders in a SharePoint list, you can achieve similar functionality with a single list.

    Consider an Orders list, for example. You could provision a folder as an order, and then assign metadata to it, such as order number, customer, and shipment method. By doing so, you can make the folder mimic the master list functionality. You can then fill the folder with order items list items, each with its own metadata, such as item number, description, and price. Now you have the rich functionality of a master/detail list within a single list.

    List Indexing. Integral to the idea of using Microsoft Windows SharePoint Services as a platform is the ability to use its storage containers, specifically lists and document libraries, for application storage. However, a number of limitations restricted the true use of these containers in Microsoft Windows SharePoint Services (version 2). One of the problems was the inability to handle large lists. As lists began to grow, both in metadata and list items, the mechanisms built into lists became clunky and inefficient.

    A key goal within Microsoft Windows SharePoint Services (version 3) was to fix these restrictions and create a rich storage model with performance capable of supporting applications, both external and those built upon the Windows SharePoint Services platform. One of the key ways that Microsoft Windows SharePoint Services (version 3) solves this issue is to include indexing on columns. By allowing a column to be indexed, and stored as a simple name/value pair in a separate database, access to specific items in large lists is significantly improved. These kinds of performance improvements allow SharePoint lists to become true data stores, capable of supporting external applications as well as simple team sites.For example, with an Orders list, you could provision a folder as an order and then assign metadata to it, such as order number, customer, and shipment method. Consider that by indexing the order number column, access to specific items in the list by an external request becomes significantly cheaper.

    Another scenario is an external application with hundreds of thousands of records. Previously, your Web application could not use a SharePoint list as a storage device. With the inclusion of indexing on columns, performance increases allow this architecture. By using Windows SharePoint Services storage, the standard features of the platform, such as views, alerts, and RSS, can now be used as a data store explorer for internal use in simple team sites.

    Cross-List Queries - Another improvement made with the idea of using Microsoft Windows SharePoint Services storage more effectively is cross-list queries. Cross-list queries allow you to use the SPQuery object to query all the lists within a Web or site collection. Previously, you had to iterate through the parent objects to obtain a collection of SPList objects, query the list to return the items, and then build your own collection of list items from the multiple lists. This exercise was not only tedious and redundant but expensive. Cross-list queries allow you to take advantage of the efficiencies built into the SPQuery functionality in a number of additional scenarios. Cross-list queries provide a rich querying capability, similar to SQL queries, within SharePoint. Among the many possible scenarios this functionality allows is the numerous aggregation scenarios commonly requested by end users.

    List Items. Several improvements in Microsoft Windows SharePoint Services (version 3) are implemented on the item level rather than on the entire list. The following is a list of several important new features.

    Per-Item Security Item-level security is certain to be a popular new feature in Microsoft Windows SharePoint Services (version 3). List and document libraries now feature the ability to set roles on each item, rather than simply at the lists level. In a developer scenario, if you combine per-item security with other features, such as list events or extensible field types, you could use per-item security to change who has access to an item, based upon an entry in another field. For example, a change to the status of an item could trigger a change in who has the ability to edit the item.

    Versioning In Windows SharePoint Services (version 2), only document libraries allowed versioning, and then only a major version would be created. This basic functionality did not match the workflow normally associated with documents; namely, the creation and edit process when a document is in draft version, and then the publishing of a document to public status. Microsoft Windows SharePoint Services (version 3) offers a new, richer versioning model. This model includes both major and minor versions, and versioning within lists as well as document libraries. In addition, major and minor versions can have different security, allowing separate draft and public version workflows. In a developer scenario, versions are associated with a rich event model that allows numerous scenarios, including custom workflows, item validation, and information propagation.

    Required Checkout In Windows SharePoint Services V2, users could modify documents without checking those documents out from a document library. This allowed multiple users to edit the same document, and left a complicated, poorly understood merge/overwrite scenario. In Microsoft Windows SharePoint Services (version 3), document edits are allowed only when the document has been checked out. This forced checkout defines a clear owner model and simplifies merging of changes.

    Workflows In Microsoft Windows SharePoint Services (version 3), a workflow allows you to attach a business process to items in SharePoint Products and Technologies. This process can control almost any aspect of an item in SharePoint Products and Technologies, including the lifecycle of that item. For example, you could create a simple workflow that routes a document to a series of users for approval.

    Workflows can be as simple or complex as your business processes require. You can create workflows that the user initiates, or workflows that SharePoint Products and Technologies automatically initiate based on some event, such as when an item is created or changed. In addition, your workflows can interact directly with the user through workflow forms. Workflow forms enable you to gather information from the user at each stage of the workflow. You can create your workflow to interact with the user through the standard SharePoint Products and Technologies browser-based interface, through workflow forms in Microsoft Office client applications such as Microsoft Word and Microsoft Excel, or even through your own custom applications. Workflows are available to end users at the list or document library level.

    Workflows can also be added to content types. Multiple workflows may be available for an item. In addition, multiple workflows can run simultaneously on the same item, but only one instance of a specific workflow type can run on a specific item at any given time. For example, you might have two workflows, "SpecReview" and "LegalReview," available for a specific content type, "Specification." Although both workflows can run simultaneously on a specific item of the "Specification" content type, you can't have two instances of the "LegalReview" workflow running on the same item at the same time.

    Events are key to transforming Microsoft Windows SharePoint Services into a true developer platform.

    Events enable first and third parties to hook into Windows SharePoint Services behaviors and override default behaviors. Events fall into two major categories:

    List events Core events, including changes, additions, and removals of list items and list columns (schema changes) Simple site events Deletion of sites and site collections

    Events are either synchronous "before" events, denoted by the "XYZing" name format, or asynchronous “after” events, denoted by the "ABCed" name format. Event receivers can be registered, through the "Features" feature, with an Item, a List, a Web, or a Content Type. For example, an event receiver that ensures a document always has a copyright in the footer can be associated with a central Content Type and pushed down to all document libraries associated with that type. As they do in Microsoft Windows SharePoint Services (version 2), developers can override and extend the event handler method. A new sequence number parameter allows for control of the firing order of multiple events.

    Features - Microsoft Windows SharePoint Services (version 3) contains a new structure called a "feature." A "feature" is an end-user-oriented container of one or more elements. An element is an atomic Windows SharePoint Services concept. The "feature" is defined in an XML format, similar to other existing SharePoint structures. Each “feature” definition is a set of XML files. Many items that were previously contained within a site definition in Windows SharePoint Services (version 2) are now able to fit as an element. In Windows SharePoint Services (version 3), a SharePoint site definition is transformed into a list of "features" plus a layout page and a master page. The goal is that any templated SharePoint site can be transformed into another templated SharePoint site simply by having the administrator toggle features on the site and possibly switch the layout page or master page. Upgrading a Windows SharePoint Services V2 site definition to a Windows SharePoint Services V3 site is a process of breaking the XML files (such as ONET.XML) into small chunks, componentizing them into arbitrary components, and then packaging them as a Windows SharePoint Services V3 "feature" and creating a workspace template that uses those "features."

    About The Author

    Jason Fortner is co-founder of Total Productivity Solutions. Total Productivity Solutions provides custom SharePoint, webpart and .NET development; and solutions to common software development issues are also provided on the site.

    Sharepoint sites, Sharepoint webparts and .NET Development

    Web.Config and ASP.NET 2.0

    Friday, January 19, 2007

    With ASP.NET 2.0, you no longer need to take the pain of manually editing your web.config file to set your application configuration settings. Two new tools have been added.

    1. Web Site Administration Tool which runs on your local browser allowing configuration of Security, Application and Provider settings. It can be invoked by clicking on the icon for ASP.NET configuration in the Solution Explorer.
    2. A new ASP.NET tab has been added to your virtual folder properties. In here, you can configure your application to use 2.0 framework or earlier. In addition, you can use the “Edit Configuration” button in this tab to open up the ASP.NET Configuration settings dialog box that contains the following tabs to configure different parameters – General, Custom Errors, Authorization, Authentication, Application, State management and Locations.

    When changes are made using these above mentioned tools, the web.config used by the web application would get updated. Try out these new tools and make your life easier.

    Exception : Unable to load DLL (OraOps9.dll) Error

    This is the first time i switched from using SQL Server to Oracle with Visual Studio .NET. When i tried to make call to a strored procedure in the oracle database my code threw following exception :

    "Unable to load DLL 'OraOps9.dll': The specified module could not be found."

    There could be many solutions to this problem.

    1. Firstly you can try with this. Grant read permissions to the Oracle home directory to the account(and possibly the iuser_machinename account). The oracle home directory isn't generally visible to non-interactive accounts. You may need read/execute on the oracle_home\bin directory.
    2. Other way, that i found out after a lot of research and that actually fixed my problem was that Oracle Data Provider for .NET (ODP.NET) was missing. You can get ODP.NET from the following location:
      Dont forget to to reboot your server after the installation.

    If you people faced this problem too then i hope the above discussion will help you out.



    2009 ·Techy Freak by TNB