Wednesday, November 14, 2007

ASP.NET 3.5 and Visual Studio 2008

ASP.NET 3.5 and Visual Studio 2008 bring great new functionality around Web development and design that makes building standards based, next generation Web sites easier than ever. From the inclusion of ASP.NET AJAX into the runtime, to new controls, the new LINQ data capabilities, to improved support for CSS, JavaScript and others, Web development has taken a significant step forward.

New Features in ASP.NET 3.5:

ASP.NET AJAX

With ASP.NET AJAX, developers can quickly create pages with sophisticated, responsive user interfaces and more efficient client-server communication by simply adding a few server controls to their pages. Previously an extension to the ASP.NET runtime, ASP.NET AJAX is now built into the platform and makes the complicated task of building cross-platform, standards based AJAX applications easy.

New ListView and DataPager Controls:

The new ListView control gives you unprecedented flexibility in how you display your data, by allowing you to have complete control over the HTML markup generated. ListView's template approach to representing data is designed to easily work with CSS styles, which comes in handy with the new Visual Studio 2008 designer view. In addition, you can use the DataPager control to handle all the work of allowing your users to page through large numbers of records.

LINQ and other .NET Framework 3.5 Improvements

With the addition of Language Integrated Query (LINQ) in .NET Framework 3.5, the process of building SQL queries using error-prone string manipulation is a thing of the past. LINQ makes your relational data queries a first-class language construct in C# and Visual Basic, complete with compiler and Intellisense support. For Web applications, the ASP.NET LinqDataSource control allows you to easily use LINQ to filter, order and group data that can then be bound to any of the data visualization controls like the ListView and GridView controls. In addition, all the other improvements to .NET Framework 3.5, including the new HashSet collection, DateTime offset support, diagnostics, garbage collection, better thread lock support, and more, are all available to you in your ASP.NET applications.

WCF Support for RSS, JSON, POX and Partial Trust

With .NET Framework 3.5, Windows Communication Foundation (WCF) now supports building Web services that can be exposed using any number of the Internet standard protocols, such as SOAP, RSS, JSON, POX and more. Whether you are building an AJAX application that uses JSON, providing syndication of your data via RSS, or building a standard SOAP Web service, WCF makes it easy to create your endpoints, and now, with .NET Framework 3.5, supports building Web services in partial-trust situations like a typical shared-hosting environment.

New Web Features in Visual Studio 2008:

New Web Design Interface

Visual Studio 2008 has incorporated a new Web designer that uses the design engine from Expression Web. Moving between design and source view is faster than ever and the new split view capability means you can edit the HTML source and simultaneously see the results on the page. Support for style sheets in separate files has been added as well as a CSS properties pane which clarifies the sometimes-complex hierarchy of cascading styles, so that it is easy to understand why an element looks the way it does. In addition Visual Studio 2008 has full WYSIWYG support for building and using ASP.NET Nested Master Pages which greatly improves the ability to build a Web site with a consistent look and feel.

JavaScript Debugging and Intellisense

In Visual Studio 2008, client-side JavaScript has now become a first-class citizen in regards to its debugging and Intellisense support. Not only does the Intellisense give standard JavaScript keyword support, but it will automatically infer variable types and provide method, property and event support from any number of included script files. Similarly, the JavaScript debugging support now allows for the deep Watch and Locals support in JavaScript that you are accustomed to having in other languages in Visual Studio. And despite the dynamic nature of a lot of JavaScript, you will always be able to visualize and step into the JavaScript code, no matter where it is generated from. This is especially convenient when building ASP.NET AJAX applications.

Multi-targeting Support

In previous versions of Visual Studio, you could only build projects that targeted a single version of the .NET Framework. With Visual Studio 2008, we have introduced the concept of Multi-targeting. Through a simple drop-down, you can decide if you want a project to target .NET Framework 2.0, 3.0 or 3.5. The builds, the Intellisense, the toolbox, etc. will all adjust to the feature set of the specific version of the .NET Framework which you choose. This allows you to take advantage of the new features in Visual Studio 2008, like the Web design interface, and the improved JavaScript support, and still build your projects for their current runtime version.

Reference:

www.asp.net




Tuesday, November 6, 2007

Understanding BizTalk Server 2006 R2

Understanding BizTalk Server 2006 R2:


Introducing BizTalk Server 2006:

No application is an island. Whether we like it or not, tying systems together has become the norm. Yet connecting software is about more than just exchanging bytes. As organizations move toward a service-oriented world, the real goal—creating effective business processes that unite separate systems into a coherent whole—comes within reach.


BizTalk Server 2006 supports this goal. Like its predecessors, this latest release allows connecting diverse software, then graphically creating and modifying process logic that uses that software. The product also lets information workers monitor running processes, interact with trading partners, and perform other business-oriented tasks.


Built on the foundation of its predecessor, BizTalk Server 2004, this new release will look familiar to anyone who's used this earlier version. The most important new additions in BizTalk Server 2006 are:


Better support for deploying, monitoring, and managing applications.


Significantly simpler installation.


Improved capabilities for Business Activity Monitoring (BAM).


BizTalk Server 2006 also uses the latest releases of other Microsoft technologies. It's built on version

2.0 of the .NET Framework, for example, and its developer tools are hosted in Visual Studio 2005. For storage, the product can use SQL Server 2005, the latest version of Microsoft's flagship database product, or SQL Server 2000, the previous release. BizTalk Server 2006 can also run on 64-bit Windows, taking advantage of the larger memory and other benefits this new generation of hardware offers.



Combining different systems into effective business processes is a challenging problem. Accordingly, BizTalk Server 2006 includes a range of technologies. The figure below illustrates the product's major components.


Information Worker Technologies



As the figure suggests, the heart of the product is the BizTalk Server 2006 Engine. The engine has two main parts:


A messaging component that provides the ability to communicate with a range of other software. By relying on pluggable adapters for different kinds of communication, the engine can support a variety of protocols and data formats, including web services and many others.


Support for creating and running graphically-defined processes called
orchestrations. Built on top of the engine's messaging components, orchestrations implement the logic that drives all or part of a business process.


Several other technologies can also be used in concert with the engine, including:


A Business Rules Engine that allows evaluating complex sets of rules.


A Health and Activity Tracking tool that lets developers and administrators monitor and manage the engine and the orchestrations it runs.


An Enterprise Single Sign-on facility, providing the ability to map authentication information between Windows and non-Windows systems.


On top of this foundation, BizTalk Server 2006 provides a group of technologies that address the more business-oriented needs of information workers. Those technologies are:


Business Activity Monitoring, allowing information workers to monitor a running business process. The information is displayed in business rather than technical terms, and what gets displayed can be controlled directly by business people.


Business Activity Services, allowing information workers to set up and manage interactions with trading partners.


All of these technologies are focused on solving the problems inherent in using a diverse set of software to support automated business processes. The next section examines how these solutions might look.




How BizTalk Server 2006 Is Used:


The great majority of modern business processes depend at least in part on software. While some of these processes are supported by a single application, many others rely on diverse software systems. This software has commonly been created at different times, on different platforms, and using different technologies. Given this, automating those business processes requires connecting diverse systems.


Addressing this challenge goes by various names: business process automation (BPA), business process management (BPM), and others. Whatever it's called, two scenarios are most important for application integration. One is connecting applications within a single organization, commonly referred to as enterprise application integration (EAI). The other, called business-to-business (B2B) integration connects applications in different organizations.


The figure below shows a simple example of the core BizTalk Server 2006 engine applied to an EAI problem. In this scenario, an inventory application, perhaps running on an IBM mainframe, notices that the stock of an item is low and so issues a request to order more of that item. This request is sent to a BizTalk Server 2006 orchestration (step 1), which then issues a request to this organization's ERP application requesting a purchase order (step 2). The ERP application, which might be running on a Unix system, sends back the requested PO (step 3), and the BizTalk Server 2006 orchestration then informs a fulfillment application, perhaps built on Windows using the .NET Framework, that the item should be ordered (step 4).





BizTalk Server 2006 Architecture:

The following figure provides a high-level overview of the BizTalk Server architecture from a messaging perspective


In this simplified view, a message is received through a receive location defined in a given receive port. This message is processed by the receive location and then published to the MessageBox database, the main persistence and routing mechanism for BizTalk Server. The MessageBox evaluates active subscriptions and routes the message to those orchestrations and send ports with matching subscriptions. Orchestrations may process the message and publish messages through the MessageBox to a send port where it is pushed out to its final destination.

The following are key components involved in BizTalk Server message processing.

Receive Ports and Receive Locations

A receive port is a collection of one or more receive locations that define specific entry points into BizTalk Server. A receive location is the configuration of a single endpoint (URL) to receive messages. The location contains configuration information for both a receive adapter and a receive pipeline. The adapter is responsible for the transport and communications part of receiving a message. Examples include the File adapter and SOAP adapter, each of which receives messages from different types of sources. The receive pipeline is responsible for preparing the message for publishing into the MessageBox. A pipeline is a series of components that are executed in sequence, each providing specific processing to a message such as decryption/encryption, parsing, or validation.

Send Ports and Send Port Groups

A send port is the combination of a send pipeline and a send adapter. A send port group is a collection of send ports and works much like an e-mail distribution list. A message sent to a send port group will be sent to all send ports in that group. The send pipeline is used to prepare a message coming from BizTalk Server for transmission to another service. The send adapter is responsible for actually sending the message using a specific protocol such as SOAP, or FTP.

Orchestrations

Orchestrations can subscribe to (receive) and publish (send) messages through the MessageBox. In addition, orchestrations can construct new messages. Messages are received using the subscription and routing mechanism already discussed. When subscriptions are filled for orchestrations, a new instance is activated and the message is delivered, or in the case of instance subscriptions, the instance is rehydrated if necessary and the message are then delivered. When messages are sent from an orchestration, they are published to the MessageBox in the same manner as a message arriving at a receive location with the appropriate properties is inserted into the database for use in routing.

MessageBox Database

The heart of the publish/subscribe engine in BizTalk Server is the MessageBox database. The MessageBox is made up of two components: one or more Microsoft SQL Server databases and the Message Agent. The SQL Server database provides the persistence store for many things including messages, message properties, subscriptions, orchestration states, tracking data, and host queues for routing.

Hosts and Host Instances

A host is a logical representation of a Microsoft Windows process that executes BizTalk Server artifacts such as send ports and orchestrations. A host instance is the physical representation of a host on a specific server. A host can be either an in-process host, which means it is owned and managed by BizTalk Server, or an isolated host, which means that the BizTalk Server code is running in a process that is not controlled by BizTalk Server. A good example of an isolated host is Internet Information Services (IIS), which hosts the receive functionality of the HTTP and SOAP adapters. Hosts are defined for an entire BizTalk Server group; a collection of BizTalk Servers that share configuration, MessageBoxes, ports, and so on

Adapters:

Adapters are the communication interface for BizTalk to and from the outside world. They perform whatever communication semantics or protocols that the remote system requires, thus hiding any complexity that is required when interfacing with remote systems, particularly legacy ones.


Adapters are commonly referred to as bit shovelers because of the way they move the binary bits from the outside world into BizTalk and from BizTalk back out to the outside world, effectively feeding the BizTalk engine with work—like a fireman feeding coal into the engine of a steam train.


No conversion or translation of messages is performed by adapters; they purely bring the bits into BizTalk so that pipelines can then optionally perform any data translation, such as converting a flat file to an XML document. This chapter begins with an overview of the adapter architecture along with features offered to adapters, and then the remainder of the chapter discusses each of the mainstream adapters

SharePoint Server questions and answers

Frequently asked Questions for SharePoint Server

  1. What is the difference between Microsoft Office SharePoint Server 2007 for Internet sites and Microsoft Office SharePoint Server 2007?

    Microsoft Office SharePoint Server 2007 for Internet sites and Microsoft Office SharePoint Server 2007 have identical feature functionality. While the feature functionality is similar, the usage rights are different.

    If you are creating an Internet, or Extranet, facing website, it is recommended that you use Microsoft Office SharePoint Server 2007 for Internet sites which does not require the purchase client access licenses. Websites hosted using an "Internet sites" edition can only be used for Internet facing websites and all content, information, and applications must be accessible to non-employees. Websites hosted using an "Internet sites" edition cannot be accessed by employees creating, sharing, or collaborating on content which is solely for internal use only, such as an Intranet Portal scenario. See the previous section on licensing for more information on the usage scenarios.

  2. What suites of the 2007 Microsoft Office system work with Office SharePoint Server 2007?

    Office Outlook 2007 provides bidirectional offline synchronization with SharePoint document libraries, discussion groups, contacts, calendars, and tasks.

    Microsoft Office Groove 2007, included as part of Microsoft Office Enterprise 2007, will enable bidirectional offline synchronization with SharePoint document libraries.

    Features such as the document panel and the ability to publish to Excel Services will only be enabled when using Microsoft Office Professional Plus 2007or Office Enterprise 2007.

    Excel Services will only work with documents saved in the new Office Excel 2007 file format (XLSX).

  3. How do I invite users to join a Windows SharePoint Services Site? Is the site secure?

    SharePoint-based Web sites can be password-protected to restrict access to registered users, who are invited to join via e-mail. In addition, the site administrator can restrict certain members' roles by assigning different permission levels to view post and edit.

  4. Can I post any kind of document?

    You can post documents in many formats, including .pdf, .htm and .doc. In addition, if you are using Microsoft Office XP, you can save documents directly to your Windows SharePoint Services site.

  5. Can I download information directly from a SharePoint site to a personal digital assistant (PDA)?

    No you cannot. However, you can exchange contact information lists with Microsoft Outlook.

  6. How long does it take to set up the initial team Web site?

    It only takes a few minutes to create a complete Web site. Preformatted forms let you and your team members contribute to the site by filling out lists. Standard forms include announcements, events, contacts, tasks, surveys, discussions and links.

  7. Can I create custom templates?

    Yes you can. You can have templates for business plans, doctor's office, lawyer's office etc.

  8. How can I make my site public? By default, all sites are created private.

    If you want your site to be a public Web site, enable anonymous access for the entire site. Then you can give out your URL to anybody in your business card, e-mail or any other marketing material. The URL for your Web site will be:
    http:// yoursitename.wss.bcentral.com

    Hence, please take special care to name your site.
    These Web sites are ideal for information and knowledge intensive sites and/or sites where you need to have shared Web workspace.
    Remember: Under each parent Web site, you can create up to 10 sub-sites each with unique permissions, settings and security rights.

  9. How do the sub sites work?

    You can create a sub site for various categories. For example:
    * Departments - finance, marketing, IT
    * Products - electrical, mechanical, hydraulics
    * Projects - Trey Research, Department of Transportation, FDA
    * Team - Retention team, BPR team
    * Clients - new clients, old clients
    * Suppliers - Supplier 1, Supplier 2, Supplier 3
    * Customers - Customer A, Customer B, Customer C
    * Real estate - property A, property B

    The URLs for each will be, for example:
    * http://yoursitename.wss.bcentral.com/finance
    * http://yoursitename.wss.bcentral.com/marketing

    You can keep track of permissions for each team separately so that access is restricted while maintaining global access to the parent site.

  10. How do I make my site non-restricted?

    If you want your site to have anonymous access enabled (i.e., you want to treat it like any site on the Internet that does not ask you to provide a user name and password to see the content of the site), follow these simple steps:
    # Login as an administrator
    # Click on site settings
    # Click on Go to Site Administration
    # Click on Manage anonymous access
    # Choose one of the three conditions on what Anonymous users can access:
    ** Entire Web site
    ** Lists and libraries
    ** Nothing

    Default condition is nothing your site has restricted access. The default conditions allow you to create a secure site for your Web site.

  11. Can I get domain name for my Web site?

    Unfortunately, no. At this point, we don't offer domain names for SharePoint sites. But very soon we will be making this available for all our SharePoint site customers. Please keep checking this page for further update on this. Meanwhile, we suggest you go ahead and set up your site and create content for it.

  12. What are picture libraries?

    Picture libraries allow you to access a photo album and view it as a slide show or thumbnails or a film strip. You can have separate folder for each event, category, etc

  13. What are the advantages of a hosted SharePoint vs. one that is on an in-house server?

    * No hardware investment, i.e. lower costs
    * No software to download - ready to start from the word go
    * No IT resources - Anyone who has used a Web program like Hotmail can use it
    * Faster deployment

  14. Can I ask users outside of my organization to participate in my Windows SharePoint Services site?

    Yes. You can manage this process using the Administration Site Settings. Simply add users via their e-mail alias and assign permissions such as Reader or Contributor.

  15. Are there any IT requirements or downloads required to set up my SharePoint site?

    No. You do not need to download any code or plan for any IT support. Simply complete the on-line signup process and provide us your current and correct email address. Once you have successfully signed up and your site has been provisioned, we will send a confirmation to the email address you provided.

  16. I am located outside of the United States. Are there any restrictions or requirements for accessing the Windows SharePoint Services?

    No. There are no system or bandwidth limitations for international trial users. Additionally language packs have been installed which allow users to set up sub-webs in languages other than English. These include: Arabic, Danish, Dutch, Finnish, French, German, Hebrew, Italian, Japanese, Polish, Portuguese (Brazilian), Spanish and Swedish.

  17. Are there any browser recommendations?

    Yes. Microsoft recommends using the following browsers for viewing and editing Windows SharePoint Services sites: Microsoft Internet Explorer 5.01 with Service Pack 2, Microsoft Internet Explorer 5.5 with Service Pack 2, Internet Explorer 6, Netscape Navigator 6.2 or later.

  18. What security levels are assigned to users?

    Security levels are assigned by the administrator who is adding the user. There are four levels by default and additional levels can be composed as necessary.
    * Reader - Has read-only access to the Web site.
    * Contributor - Can add content to existing document libraries and lists.
    * Web Designer - Can create lists and document libraries and customize pages in the Web site.
    * Administrator - Has full control of the Web site.

  19. How secure are Windows SharePoint Services sites hosted by Microsoft?

    Microsoft Windows SharePoint Services Technical security measures provide firewall protection, intrusion detection, and web-publishing rules. The Microsoft operation center team tests and deploys software updates in order to maintain the highest level of security and software reliability. Software hot-fixes and service packs are tested and deployed based on their priority and level of risk. Security related hot-fixes are rapidly deployed into the environment to address current threats. A comprehensive software validation activity ensures software stability through regression testing prior to deployment.

  20. What is the difference between an Internet and an intranet site?

    An internet site is a normal site that anyone on the internet can access (e.g., www.msn.com, www.microsoft.com, etc.). You can set up a site for your company that can be accessed by anyone without any user name and password.

    An intranet (or internal network), though hosted on the Web, can only be accessed by people who are members of the network. They need to have a login and password that was assigned to them when they were added to the site by the site administrator.

  21. What is a workspace?

    A site or workspace is when you want a new place for collaborating on Web pages, lists and document libraries. For example, you might create a site to manage a new team or project, collaborate on a document or prepare for a meeting.

  22. What are the various kinds of roles the users can have?

    A user can be assigned one of the following roles
    * Reader - Has read-only access to the Web site.
    * Contributor - Can add content to existing document libraries and lists.
    * Web Designer - Can create lists and document libraries and customize pages in the Web site.
    * Administrator - Has full control of the Web site.

  23. Can more than one person use the same login?

    If the users sharing that login will have the same permissions and there is no fear of them sharing a password, then yes. Otherwise, this is discouraged.

  24. How customizable is the user-to-user access?

    User permissions apply to an entire Web, not to documents themselves. However, you can have additional sub webs that can optionally have their own permissions. Each user can be given any of four default roles. Additional roles can be defined by the administrator.

  25. Can each user have access to their own calendar?

    Yes there are two ways to do this,
    * by creating a calendar for each user, or
    * by creating a calendar with a view for each user

  26. How many files can I upload?

    There is no restriction in place except that any storage consumed beyond that provided by the base offering may have an additional monthly charge associated with them.

  27. What types of files can I upload / post to the site?

    The only files restricted are those ending with the following extensions: .asa, .asp, .ida, .idc, .idq. Microsoft reserves the right to add additional file types to this listing at any time. Also, no content that violates the terms of service may be uploaded or posted to the site.

  28. Can SharePoint be linked to an external data source?

    SharePoint data can be opened with Access and Excel as an external data source. Thus, SharePoint can be referenced as an external data source. SharePoint itself cannot reference an external data source.

  29. Can SharePoint be linked to a SQL database?

    This is possible via a custom application, but it not natively supported by SharePoint or SQL Server.

  30. Can I customize my Windows SharePoint Services site?

    YES! Windows SharePoint Services makes updating sites and their content from the browser easier than ever.

    SharePoint includes tools that let you create custom lists, calendars, page views, etc. You can apply a theme add List, Survey and Document Library Web Parts to a page create personal views change logos connect Web Parts and more.

    To fully customize your site, you can use Microsoft FrontPage 2003. Specifically, you can use FrontPage themes and shared borders, and also use FrontPage to create photo galleries and top ten lists, utilize standard usage reports, and integrate automatic Web content.

  31. Will Microsoft Office SharePoint Server 2007 run on a 64-bit version of Microsoft Windows?

    Windows SharePoint Services 3.0, Office SharePoint Server 2007, Office Forms Server 2007, and Office SharePoint Server 2007 for Search will support 64-bit versions of Windows Server 2003.

  32. How Office SharePoint Server 2007 can help you?


    Office SharePoint Server 2007 can help us:

    Manage content and streamline processes. Comprehensively manage and control unstructured content like Microsoft Office documents, Web pages, Portable Document Format file (PDF) files, and e-mail messages. Streamline business processes that are a drain on organizational productivity.

    Improve business insight. Monitor your business, enable better-informed decisions, and respond proactively to business events.

    Find and share information more simply. Find information and expertise wherever they are located. Share knowledge and simplify working with others within and across organizational boundaries.

    Empower IT to make a strategic impact. Increase responsiveness of IT to business needs and reduce the number of platforms that have to be maintained by supporting all the intranet, extranet, and Web applications across the enterprise with one integrated platform.

    Office SharePoint Server 2007 capabilities can help improve organizational effectiveness by connecting people, processes, and information.

    Office SharePoint Server 2007 provides these capabilities in an integrated server offering, so your organization doesn't have to integrate fragmented technology solutions itself.

  33. What are the features that the portal components of Office SharePoint Server 2007 include?

    The portal components of Office SharePoint Server 2007 include features that are especially useful for designing, deploying, and managing enterprise intranet portals, corporate Internet Web sites, and divisional portal sites. The portal components make it easier to connect to people within the organization who have the right skills, knowledge, and project experience.

  34. What are the advanced features of MOSS 2007?

    * User Interface (UI) and navigation enhancements
    * Document management enhancements
    * The new Workflow engine
    * Office 2007 Integration
    * New Web Parts
    * New Site-type templates
    * Enhancements to List technology
    * Web Content Management
    * Business Data Catalog
    * Search enhancements
    * Report Center
    * Records Management
    * Business Intelligence and Excel Server
    * Forms Server and InfoPath
    * The "Features" feature
    * Alternate authentication providers and Forms-based authentication

    What are the features of the new Content management in Office SharePoint 2007?

    The new and enhanced content management features in Office SharePoint Server 2007 fall within three areas:
    * Document management
    * Records management
    * Web content management
    Office SharePoint Server 2007 builds on the core document management functionality provided by Windows SharePoint Services 3.0, including check in and check out, versioning, metadata, and role-based granular access controls. Organizations can use this functionality to deliver enhanced authoring, business document processing, Web content management and publishing, records management, policy management, and support for multilingual publishing.

    Does a SharePoint Web site include search functionality?

    Yes. SharePoint Team Services provides a powerful text-based search feature that helps you find documents and information fast.

  35. Write the features of the search component of Office SharePoint Server 2007?

    The search component of Office SharePoint Server 2007 has been significantly enhanced by this release of SharePoint Products and Technologies. New features provide:
    * A consistent and familiar search experience.
    * Increased relevance of search results.
    * New functions to search for people and expertise.
    * Ability to index and search data in line-of-business applications and
    * Improved manageability and extensibility.

  36. What are the benefits of Microsoft Office SharePoint Server 2007?


    * Provide a simple, familiar, and consistent user experience.
    * Boost employee productivity by simplifying everyday business activities.
    * Help meet regulatory requirements through comprehensive control over content.
    * Effectively manage and repurpose content to gain increased business value.
    * Simplify organization-wide access to both structured and unstructured information across disparate systems.
    * Connect people with information and expertise.
    * Accelerate shared business processes across organizational boundaries.
    * Share business data without divulging sensitive information.
    * Enable people to make better-informed decisions by presenting business-critical information in one central location.
    * Provide a single, integrated platform to manage intranet, extranet, and Internet applications across the enterprise.

  37. Will SharePoint Portal Server and Team Services ever merge?

    The products will come together because they are both developed by the Office team.

  38. What does partial trust mean the Web Part developer?

    If an assembly is installed into the BIN directory, the code must be ensured that provides error handling in the event that required permissions are not available. Otherwise, unhandled security exceptions may cause the Web Part to fail and may affect page rendering on the page where the Web Part appears.

  39. How can I raise the trust level for assemblies installed in the BIN directory?

    Windows SharePoint Services can use any of the following three options from ASP.NET and the CLR to provide assemblies installed in the BIN directory with sufficient permissions. The following table outlines the implications and requirements for each option.

    Option Pros Cons

    Increase the trust level for the entire virtual server. For more information, see "Setting the trust level for a virtual server" Easy to implement.

    In a development environment, increasing the trust level allows you to test an assembly with increased permissions while allowing you to recompile assemblies directly into the BIN directory without resetting IIS. This option is least secure.

    This option affects all assemblies used by the virtual server.
    There is no guarantee the destination server has the required trust level. Therefore, Web Parts may not work once installed on the destination server.

    Create a custom policy file for your assemblies. For more information, see "How do I create a custom policy file?" Recommended approach.

    This option is most secure.

    An assembly can operate with a unique policy that meets the minimum permission requirements for the assembly.

    By creating a custom security policy, you can ensure the destination server can run your Web Parts.

    Requires the most configuration of all three options.
    Install your assemblies in the GAC

    Easy to implement.
    This grants Full trust to your assembly without affecting the trust level of assemblies installed in the BIN directory.

    This option is less secure.

    Assemblies installed in the GAC are available to all virtual servers and applications on a server running Windows SharePoint Services. This could represent a potential security risk as it potentially grants a higher level of permission to your assembly across a larger scope than necessary

    In a development environment, you must reset IIS every time you recompile assemblies.

    Licensing issues may arise due to the global availability of your assembly.

  40. Does SharePoint work with NFS?

    Yes and no. It can crawl documents on an NFS volume, but the SharePoint database or logs cannot be stored there.

  41. How is SharePoint Portal Server different from the Site Server?

    Site Server has search capabilities but these are more advanced using SharePoint. SPS uses digital dashboard technology which
    provides a nice interface for creating web parts and showing them on dashboards (pages). SS doesn't have anything as advanced as that. The biggest difference would be SPS document management features which also integrate with web folders and MS Office.

  42. What would you like to see in the next version of SharePoint?

    A few suggestions:

    # SPS and STS on same machine
    # Tree view of Categories and Folders
    # General Discussion Web Part
    # Personalization of Dashboards
    # Role Customization
    # Email to say WHY a document has been rejected for Approval
    # More ways to customize the interface
    # Backup and restore an individual Workspaces
    # Filter for Visio
    # Better way to track activity on SPS

  43. Why SharePoint is not a viable solution for enterprise wide deployments?

    Document management does not scale beyond a single server, but scales great within a single server. For example, a quad Xeon machine with 4GB of RAM works great for a document management server that has about 900,000 - 1,000,000 document, but if you need to store 50,000,000 document and want to have them all in one single workspace then it does not scale at all. If you need a scenario like this, you need to plan your deployment right and it should scale for you, it just does not right out of the box.
    If you are using your server as a portal and search server most for the most part it scales great. You can have many different servers crawl content sources and have separate servers searching and serving the content.

    If you have < 750,000 documents per server and fewer than 4 content sources and fewer than 50,000 users, SPS should scale just fine for your needs with the proper planning.

  44. What are the actual advantages of SharePoint Portal Services (SPS) over SharePoint Team Services (STS)?

    SharePoint Portal Services (SPS) has MUCH better document management. It has check-in, check-out, versioning, approval, publishing, subscriptions, categories, etc. STS does not have these features, or they are very scaled back. SharePoint team Services (SPS) has a better search engine, and can crawl multiple content sources. STS cannot. STS is easier to manage and much better for a team environment where there is not much Document Management going on. SPS is better for an organization, or where Document Management is crucial.

  45. How Does SharePoint work?

    The browser sends a DAV packet to IIS asking to perform a document check in. PKMDASL.DLL, an ISAPI DLL, parses the packet and sees that it has the proprietary INVOKE command. Because of the existence of this command, the packet is passed off to msdmserv.exe, who in turn processes the packet and uses EXOLEDB to access the WSS, perform the operation and send the results back to the user in the form of XML.

Saturday, November 3, 2007

SharePoint Server Overview

SharePoint Portal Server: What is it?

The Microsoft Office System provides information workers with the tools they need to get their jobs done – not just desktop applications but servers, services, and solutions as well. Microsoft Office SharePoint Portal Server 2003 addresses servers.

SharePoint Portal Server is an application built on top of Microsoft Windows SharePoint Services. Before we can look at SharePoint Portal Server, you need to understand Windows SharePoint Services.

Windows SharePoint Services is a technology you get in Windows Server 2003. It is an engine for serving up in a very scalable, very available, very self-serviced and extensible way, tens of thousands of Web sites to hundreds of thousands of users. The sites come to you without you doing anything extra out-of-the-box with document collaboration, information sharing, and team productivity tools. Using SharePoint sites for sharing-type applications or collaboration activities, instead of file shares, is sensible and effective.

From the point of view of a developer, SharePoint sites are not just collaboration sites. Windows SharePoint Services can deliver several different types of sites including the out-of-the-box Document Workspace sites for document editing and management, and Meeting Workspace sites for meeting management. You can use Windows SharePoint Services as a development platform to build additional sites on, and on which to create collaboration applications and information-sharing applications. Microsoft Office Project Web Access is a great example of an application built on top of Windows SharePoint Services.

Whereas Windows SharePoint Services is designed mainly for document and other collaboration, SharePoint Portal Server helps collect, organizes, and provides easy access to enterprise information. With SharePoint Portal Server, sites are personalized, and more accessible, discoverable, and searchable. It provides a single point of access for people, teams, knowledge and applications.


SharePoint Server 2007:

Microsoft Office SharePoint Server 2007 builds upon the Microsoft Windows SharePoint Services 3.0 infrastructure to provide a true enterprise portal platform. This article describes the technologies that Office SharePoint Server 2007 provides.

Office SharePoint Server 2007 delivers on the six major enterprise-focused themes for the 2007 Microsoft Office system: Individual Impact, Enterprise Content Lifecycle, Collaboration, Knowledge Discovery and Insight, Information Worker Solutions, and Fundamentals.

The Office SharePoint Server 2007 feature enhancements and new additions provide the components needed to build a fully integrated enterprise portal.



SharePoint Server Features:

Office SharePoint Server 2007 introduces new technologies, including the following:

  • Business Data Catalog
    Enables integration between enterprise portal and line-of-business (LOB) applications.
  • Document Management
    Provides control, organization, publishing, offline capabilities, draft item security, rights management, and records management.
  • Web Content Management
    Enables site branding, creation of custom converters, building of multilingual sites, and building of content deployment solutions.
  • Office SharePoint Server 2007 Excel Services
    Enables interaction with your spreadsheets (view, calculate, create snapshots, extract values) through a Web browser or programmatically through a Web service.
  • Office InfoPath Forms Services Capabilities in Office SharePoint Server 2007 Enables interaction with form templates designed with Microsoft Office InfoPath 2007 through a Web browser.


Office SharePoint Server 2007 also brings enhancements to existing technologies, including the following:

  • Search Provides enhanced capabilities in portal sites, team sites, content management sites, and custom headless search applications.
  • User Profiles and Audience Targeting
    Provides improvements for property management, imports, privacy and security, and My Page, plus the addition of memberships, shared context, and colleague's quick links.
  • Single Sign-on
    Provides enhancements to include a pluggable mechanism to allow alternate single sign-on providers.


Microsoft Office SharePoint Server 2007 benefits



  • Provide a simple, familiar, and consistent user experience.

Office SharePoint Server 2007 is tightly integrated with familiar client desktop applications, e-mail, and Web browsers to provide a consistent user experience that simplifies how people interact with content, processes, and business data. This tight integration, coupled with robust out-of-the-box functionality, helps you employ services themselves and facilitates product adoption.




  • Boost employee productivity by simplifying everyday business activities.

Take advantage of out-of-the-box workflows for initiating, tracking, and reporting common business activities such as document review and approval, issue tracking, and signature collection. You can complete these activities without any coding. Tight integration with familiar client applications, e-mail, and Web browsers provide you with a simple, consistent experience. Modifying and extending these out-of-the-box workflow processes is made easy through tools like Microsoft Office SharePoint Designer 2007 (the next release of Microsoft Office FrontPage).




  • Help meet regulatory requirements through comprehensive control over content.

By specifying security settings, storage policies, auditing policies, and expiration actions for business records in accordance with compliance regulations, you can help ensure your sensitive business information can be controlled and managed effectively. And you can reduce litigation risk for your organization. Tight integration of Office SharePoint Server 2007 with familiar desktop applications means that policy settings are rendered onto client applications in the Microsoft Office system, making it simpler for employees to be aware of and comply with regulatory requirements.




  • Effectively manage and repurpose content to gain increased business value.

Business users and content authors can create and submit content for approval and scheduled deployment to intranet or Internet sites. Managing multilingual content is simplified through new document library templates that are specifically designed to maintain a relationship between the original version and different translations of a document.




  • Simplify organization-wide access to both structured and unstructured information across disparate systems.

Give your users access to business data found in common line-of-business systems like SAP and Siebel through Office SharePoint Server 2007. Users can also create personalized views and interactions with business systems through a browser by dragging configurable back-end connections. Enterprise-wide Managed Document Repositories help your organizations store and organize business documents in one central location.




  • Connect people with information and expertise.

Enterprise Search in Office SharePoint Server 2007 incorporates business data along with information about documents, people, and Web pages to produce comprehensive, relevant results. Features like duplicate collapsing, spelling correction, and alerts improve the relevance of the results, so you can easily find what you need.




  • Accelerate shared business processes across organizational boundaries.

Without coding any custom applications, you can use smart, electronic forms–driven solutions to collect critical business information from customers, partners, and suppliers through a Web browser. Built-in data validation rules help you gather accurate and consistent data that can be directly integrated into back-end systems to avoid redundancy and errors that result from manual data re-entry.




  • Share business data without divulging sensitive information.

Give your employees access to real-time, interactive Microsoft Office Excel spreadsheets from a Web browser through Excel Services running on Office SharePoint Server 2007. Use these spreadsheets to maintain and efficiently share one central and up-to-date version while helping to protect any proprietary information embedded in the documents (such as financial models).




  • Enable people to make better-informed decisions by presenting business-critical information in one central location.

Office SharePoint Server 2007 makes it easy to create live, interactive business intelligence (BI) portals that assemble and display business-critical information from disparate sources, using integrated BI capabilities such as dashboards, Web Parts, scorecards, key performance indicators (KPIs), and business data connectivity technologies. Centralized Report Center sites give users a single place for locating the latest reports, spreadsheets, or KPIs.




  • Provide a single, integrated platform to manage intranet, extranet, and Internet applications across the enterprise.

Office SharePoint Server 2007 is built on an open, scalable architecture, with support for Web services and interoperability standards including XML and Simple Object Access Protocol (SOAP). The server has rich, open application programming interfaces (APIs) and event handlers for lists and documents. These features provide integration with existing systems and the flexibility to incorporate new non-Microsoft IT investments.

Friday, November 2, 2007

Framework 3.0

Framework 3.0

What is the Microsoft .NET Framework 3.0?

The Microsoft .NET Framework 3.0 (formerly WinFX), is the new managed code programming model for Windows. It combines the power of the .NET Framework 2.0 with four new technologies:

  • Windows Presentation Foundation (WPF)

  • Windows Communication Foundation (WCF)


  • Windows Workflow Foundation (WF), and


  • Windows CardSpace (WCS, formerly "InfoCard").

Use the .NET Framework 3.0 today to build applications that have visually compelling user experiences, seamless communication across technology boundaries, the ability to support a wide range of business processes, and an easier way to manage your personal information online. This is the same great WinFX technology you know and love, now with a new name that identifies it for exactly what it is – the next version of Microsoft's development framework.

Framework 3.0 Architecture:





  • Windows Workflow Foundation (WPF):

What is Workflow?

In the business world, workflow is how an item is moved from one person to another through a process. That process is the business process, and it defines the steps necessary to complete a piece of work. Steps in the process can be required or optional. For example, a business process for a vacation request might be that the employee must provide some information, such as the dates requested, to his or her supervisor. Then, the employee's supervisor must determine if the employee has vacation time to use, and if the date or dates requested are available for vacation.


The supervisor must provide the date information to the human resources department. Finally, the human resources department verifies that all policies have been followed, and provides the information to accounting at the appropriate time so payroll adjustments can be made. Notice that I didn't mention technology in my explanation of the business process. Business processes should be defined absent of technology. However, you can see there's a flow to the work. Also, notice that at several points in the flow, decisions need to be made. For example, the supervisor must make sure the employee has vacation time to use, and the company might have specific requirements about the number of employees that can be on vacation at the same time within a department. Because the flow can't move from one step to the next without some criteria being met, this is a state-based workflow. A state-based workflow means that each step of the flow has criteria that must be met before the flow can continue to the next step.


A state-based workflow waits on external entities to perform some action before moving to the next step. This example of workflow has a large amount of potential branching. Within a workflow, branching is when a decision needs to be made, such as when the supervisor must determine if the employee has enough vacation time to use, and if company policies related to staff size within a department will be met. In this case, two decisions need to be made: first, if the employee has vacation time to use, and second, if policies have been met. For each branch in a workflow, there must be at least two alternatives. You can't have a workflow just stop at a decision point.


Another type of workflow is sequential. Sequential workflow is a workflow whose steps are performed one right after the other, but might include branching. In this case, sequential refers more to continuous operation, instead of the order in which actions are performed. The traditional concept of sequential in programming is without branching, but when related to workflow, sequential means continuous, instead of without branching. Steps in a Sequential workflow don't wait for an external entity to perform the next step. You can think of the Sequential workflow as close to continuous. There might be some external entity's action required to begin the flow, but once the flow is started, little if any external action is needed. Technology must be applied to a business process. For example, you might have a process that automatically updates a sales order as complete, and sends an e-mail notice to the customer and the sales person when a sales order is shipped. An external entity must start the process by saying that the sales order has shipped, but then some system would mark the sales order as complete, determine the customer's e-mail address, determine the sales person's e-mail address, and then send the e-mail. Once an external entity initiates the flow, the flow continues until an exception is encountered or the flow is completed.


Introducing Windows Workflow Foundation (WWF):


Windows Workflow Foundation (WF) is a technology that Microsoft has packaged with the .NET Framework for Microsoft Vista. WF is part of the programming model for Microsoft Vista, the next release of the Windows operating system. The new name for that programming model is WinFX, and it's a significant expansion of the Microsoft .NET Framework that was first released several years ago. Although WF is part of the WinFX programming model for Windows Vista, it can be run on clients that have Windows Server 2003 SP1, Windows XP SP2, Windows XP Home Edition, or Windows XP Media Center Edition. To develop workflow applications, you must be using Visual Studio 2005—any version except express. You can build workflow applications using VS2005 by adding the Visual Studio 2005 Extensions for Windows Workflow Foundation.


Architecture of Windows Workflow Foundation:

WF itself is a programming model, along with an engine and a set of tools for building workflow enabled applications. The programming model is made up of exposed APIs that other

Programming languages can use to interact with the workflow engine. These APIs are encapsulated within a namespace called System.Workflow. That namespace will be part of the WinFX programming model, but can also be installed as an add-on to the existing .NET Framework 2.0.


The easiest way to interact with the new APIs and namespace is through the Workflow

Designers, which you can add onto VS2005. You must download and install WF (more on this

In the next section) unless you're using Windows Vista as your operating system. When you download and install the foundation, WF gets bolted onto the .NET Framework 2.0 and VS2005. Within VS2005, you'll have new project types and will be able to import and use the System.Workflow namespace. The new Workflow Designer projects allow you to design workflow visually using the same drag-and-drop methods you use for creating Windows or Web-based applications. Within the designers, you build workflow much like you'd create a flowchart with a tool such as Microsoft Visio. WF also allows you to package the designers for reuse.


For example, you could build a Windows application that allows business people to create their own workflow libraries. The design tools that become part of VS2005 make up the first component of the overall WF. The next component is the actual workflow. Workflow is made up of a group of activities. These activities facilitate a business process or part of a business process. Activities are a central idea within the concept of workflow and the WF. A single workflow within WF is made up of one or more activities. In the context of the WF, activities are the actual work units necessary to perform a workflow. A number of out-of-the-box activities are provided as part of the WF. These out-of-the-box activities are part of the WF base activity library. You aren't restricted only to these activities; you can create custom activities and create your own library. You create the custom activities using the VS2005 Workflow Designers.


The next component of the WF is the WF runtime engine. The WF runtime engine executes workflow, made up of activities, and created with the VS2005 Workflow Designers. The runtime engine also includes services such as scheduling, state management, and rules. The scheduling service schedules the execution of activities within a given workflow. The state management service allows the state of a workflow to be persisted, instead of storing that state in another mechanism, such as a database. The rules service executes Policy activities.



Policy activities in the section entitled "Out-of-the-Box Activities". For now, realize that you can create workflows that are based on business rules and that perform some action when those rules are satisfied. The rules service handles all this.



The last component of WF is a host process. WF itself doesn't have an executable environment. Instead, another process must host the runtime engine and workflows. This host process may be a Windows application or an ASP.NET application. During development, this host process is VS2005. The soon-to-be-released Microsoft Office 12 can also be a host for a workflow created with WF.



  • Windows Communication Foundation(WCF) :


One of the biggest IT topics today has to be the concept of Service-Oriented Architecture (SOA).Service-Oriented Architecture isn't new. You'd think that with the coverage it has received over the past few years that developers and "techy" individuals would understand it better, yet it ranks fairly high on the misunderstood-o-meter because its interpretation, implementation, and use is pretty loose due to the fairly vague definition. When you want to understand the meaning of something, you usually go to a place that defines it, such as a dictionary. In this case, we turn to the W3C to understand the definition of SOA. The

W3C defines Service-Oriented Architecture as "A set of components which can be invoked and

Whose interface descriptions can be discovered and published" As you sit and ponder this definition, it becomes quite apparent that this definition is fairly broad. It also becomes apparent why the Service-Oriented Architecture picture is somewhat fuzzy, because the definition leaves a lot of room for interpretation.


With this in mind, the purpose of this chapter is twofold. First, to better explain what SOA is and the need for it; and second, to introduce Windows Communication Foundation (WCF) and the following content:


❑ The need for SOA

❑ How Windows Communication Foundation addresses the SOA needs



Service-Oriented Architecture Principles:


Streams of information have been flowing from Microsoft in the forms of articles and white papers

Regarding its commitment to SOA and in this entire information one of the big areas constantly stressed are the principles behind service orientation:



❑ Explicit boundaries

❑ Autonomous services

❑ Policy-based compatibility

❑ Shared schemas and contracts



Explicit Boundaries


As you will learn in the next section, SOA is all about messaging—sending messages from point A to point B. These messages must be able to cross explicit and formal boundaries regardless of what is behind those boundaries. This allows developers to keep the flexibility of how services are implemented and deployed. Explicit boundaries mean that a service can be deployed anywhere and be easily and freely accessed by other services, regardless of the environment or development language of the other service.


The thing to keep in mind is that there is a cost associated with crossing boundaries. These costs come in a number of forms, such as communication, performance, and processing overhead costs. Services should be called quickly and efficiently.


Autonomous Services:


Services are built and deployed independently of other services. Systems, especially distributed systems, must evolve over time and should be built to handle change easily. This SOA principle states that each service must be managed and versioned differently so as to not affect other services in the process. In the book publisher example, the Order Process service and Order Fulfillment service are completely independent of each other; each is versioned and managed completely independent of the other. In this way, when one changes it should not affect the other. It has been said that services should be built not to fail. In following this concept, if a service is unavailable for whatever reason or should a service depend on another service that is not available, every precaution should be taken to allow for such services to survive, such as redundancy or failover.


Policy-Based Compatibility:


When services call each other, it isn't like two friends meeting in the street, exchanging pleasantries, and then talking. Services need to know a little more about each other. Each service may or may not have certain requirements before it will start communicating and handing out information. Each service has its own compatibility level and knows how it will interact with other services. These two friends in fact aren't friends at all. They are complete and total strangers. When these two strangers meet in the street, an interrogation takes place, with each person providing the other with a policy. This policy is an information sheet containing explicit information about the person. Each stranger scours the policy of the other looking for similar interests. If the two services were to talk again, it would be as if they had never met before in their life. The whole interrogation process would start over.

This is how services interact. Services look at each others' policy, looking for similarities so that they can start communicating. If two services can't satisfy each others' policy requirements, all bets are off. These policies exist in the form of machine-readable expressions. Policies also allow you to move a service from one environment to another without changing the behavior of the service.


Shared Schemas and Contracts:


Think "schemas = data" and "contracts = behavior." The contract contains information regarding the structure of the message. Services do not pass classes and types; they pass schemas and contracts. This allows for a loosely coupled system where the service does not care what type of environment the other service is executing on. The information being passed is 100 percent platform independent. As described previously, a service describes it capabilities.


Why Windows Communication Foundation:


Windows Communication Foundation (WCF) is a platform, a framework if you will, for creating and distributing connected applications. It is a fusion of current distributed system technologies designed and developed from day one with the goal of achieving SOA nirvana, or coming as close to it as possible. WCF is a programming model that enables developers to build service solutions that are reliable and secure, and even transacted. It simplifies development of connected applications and offers something to developers that they have not seen in quite a while—a unified, simplified, and manageable distributed system development approach.


Built on top of the 2.0 .NET Framework CLR (Common Language Runtime), the Windows

Communication Foundation is a set of classes that allow developers to build service-oriented applications in their favorite .NET environment (VB.NET or C#). This section begins by taking a detailed look at the architecture of WCF and the components that make WCF what it is.



  • Windows Presentation Foundation (WPF):


Introduction:


When .NET first appeared, it introduced a small avalanche of new technologies. There was a whole new way to write web applications (ASP.NET), a whole new way to connect to databases (ADO.NET), new typesafe languages (C# and VB .NET), and a managed runtime (the

CLR). Not least among these new technologies is Windows Forms, a library of classes for building Windows applications. Although Windows Forms is a mature and full-featured toolkit, it's hardwired to essential bits of Windows plumbing that haven't changed much in the past ten years. Most significantly, Windows Forms relies on the Windows API to create the visual appearance of standard user interface elements such as buttons, text boxes, check boxes, and so on. As a result, these ingredients are essentially uncustomizable. For example, if you want to create a stylish glow button you need to create a custom control and paint every aspect of the button (in all its different states) using a lower-level drawing model. And don't even think about introducing animated effects such as spinning text, shimmering buttons, shrinking windows, or live previews because you'll have to paint every detail by hand!


The Windows Presentation Foundation (WPF) changes all this by introducing a new model with entirely different plumbing. Although WPF includes the standard controls you're familiar with, it draws every text, border, and background fill itself. As a result, WPF can provide much more powerful features that let you alter the way any piece of screen content is rendered. Using these features, you can restyle common controls such as buttons, often without writing any code. Similarly, you can use transformation objects to rotate, stretch, scale, and skew anything in your user interface, and you can even use WPF's baked-in animation system to do it right before the user's eyes.


Underlying the new features in WPF is a powerful new infrastructure based on DirectX,

The hardware-accelerated graphics API that's commonly used in cutting-edge computer

Games. This means that you can use rich graphical effects without incurring the performance

Overhead that you'd suffer with Windows Forms. In fact, you even get advanced features such

As support for video files and 3-D content. Using these features (and a good design tool), it's

Possible to create eye-popping user interfaces and visual effects that would have been all but

Impossible with Windows Forms.



Understanding Windows Graphics:


It's hard to appreciate how dramatic WPF is without realizing that Windows developers have been using essentially the same display technology for more than ten years. A modern Windows application built with C# indirectly relies on two parts of the Windows operating system to create its user interface:


User32 provides the familiar Windows look and feel for elements such as windows, buttons, text boxes, and so on.

GDI/GDI+ provides drawing support for rendering shapes, text, and images at the cost of additional complexity (and often lackluster performance).


DirectX: The New Graphics Engine:


Microsoft created one way around the limitations of the User32 and GDI/GDI+ libraries:

DirectX. DirectX began as a cobbled-together, error-prone toolkit for creating games on the

Windows platform. Its design mandate was speed, and so Microsoft worked closely with video card vendors to give DirectX the hardware acceleration needed for complex textures, special effects such as partial transparency, and three-dimensional graphics.



Over the years since it was first introduced (shortly after Windows 95), DirectX has matured. It's now an integral part of Windows, with support for all modern video cards. However, the programming API for DirectX still reflects its roots as a game developer's toolkit. Because of its raw complexity, DirectX is almost never used in traditional types of Windows applications (such as business software).


WPF changes all this. In WPF, the underlying graphics technology isn't GDI/GDI+. Instead, it's DirectX. Remarkably, WPF applications use DirectX no matter what type of user interface you create. That means that whether you're designing complex three-dimensional graphics (DirectX's forté) or just drawing buttons and plain text, all the drawing work travels through the DirectX pipeline. As a result, even the most mundane business applications can use rich effects such as transparency and antialiasing. You also benefit from hardware acceleration, which simply means DirectX hands off as much work as possible to the GPU (graphics processing unit), which is the dedicated processor on the video card.



Hardware Acceleration and WPF:


You're probably aware that video cards differ in their support for specialized rendering features and optimizations. When programming with DirectX, that's a significant headache. With WPF, it's a much smaller concern, because WPF has the ability to perform everything it does using software calculations rather than relying on built-in support from the video card.



Silverlight:


Like the .NET Framework itself, WPF is a Windows-centric technology. That means that

WPF applications can only be used on computers running the Windows operating system (specifically, Windows XP or Windows Vista). Browser-based WPF applications are similarly limited—they can only run on Windows computers, and they can only be hosted inside Internet

Explorer. There are some workarounds to support other browsers, but they're limited.

These restrictions won't change—after all, part of Microsoft's goal with WPF is to take advantage of the rich capabilities of Windows computers and its investment in technologies such as DirectX. However, there is a new emerging project named Silverlight that's designed to take a subset of the WPF platform, host it in any modern browser using a plug-in (including

Firefox and Safari), and open it up to other operating systems (such as Linux and Mac OS).

This is an ambitious project, and it's still not clear how much developer interest it will attract and how good its cross-platform support will be. Microsoft has already released early previews of the Silverlight technology, which was originally named WPF/E (WPF Everywhere) because it provides a subset of the features in WPF.





XAML:


XAML (short for Extensible Application Markup Language and pronounced "zammel" is a markup language used to instantiate .NET objects. Although XAML is a technology that can be applied to many different problem domains, its primary role in life is to construct WPF user interfaces. In other words, XAML documents define the arrangement of panels, buttons, and controls that make up the windows in a WPF application.




  • CARDSPACE :


The Internet continues to be increasingly valuable, and yet also faces significant challenges. Online identity theft, fraud, and privacy concerns are rising. Users must track a growing number of accounts and passwords. This burden results in "password fatigue," and that results in insecure practices, such as reusing the same account names and passwords at many sites. Many of these problems are rooted in the lack of a widely adopted identity solution for the Internet.


CardSpace is Microsoft's implementation of an Identity Metasystem that enables users to choose from a portfolio of identities that belong to them and use them in contexts where they are accepted, independent of the underlying identity systems where the identities originate and are used.


For users and businesses alike, the Internet continues to be increasingly valuable. More people are using the Web for everyday tasks, from shopping, banking, and paying bills to consuming media and entertainment. E-commerce is growing, with businesses delivering more services and content across the Internet, communicating and collaborating online, and inventing new ways to connect with each other.

But as the value of what people do online have increased, the Internet itself has become more complex and dangerous. Online identity theft, fraud, and privacy concerns are on the rise. And increasingly sophisticated practices such as "phishing" are invented. In response, a multitude of systems designed to protect identity have been devised. The diversity results in the aforementioned password fatigue and unsafe practices.

The root of these problems is that the Internet was designed without a system of digital identity in mind. In efforts to address this deficiency, numerous digital identity systems have been introduced, each with its own strengths and weaknesses. But no single system meets the requirements of every digital identity scenario. The reality is that many different identity systems are in use today, with still more being invented. The result is an inconsistent patchwork of improvised solutions at every Web site, rendering the system as a whole fragile, and constraining the fuller realization of the promise of e-commerce.


Source : offshoresoftwaredevelopmentindia