Search  
Saturday, July 04, 2009..:: Home::..Register  Login
 Featured Articles Minimize

  
 Articles Link Minimize

  
   Minimize

  
 Team Foundation Server 2008 Architecture Minimize


Team Foundation Server Object Model

 Server architecture diagram Client architecture diagram

The Team Foundation Server object model is a set of managed APIs that include the following interfaces.

  • Team Foundation Common Services

    • Registration service

    • Security service

    • Linking service

    • Eventing service

    • Classification service

  • Version Control Object Model

  • Work Item Tracking Object Model

  • Team Foundation Build Object Model

The Team Foundation Server object model is publicly documented in the Team Foundation Server extensibility documentation in the Visual Studio SDK.

Team Foundation Server includes a set of Web services and databases. These services and databases are installed and configured separately on the Team Foundation application tier, data tier, and client tier. The above figures provide a high-level view of Web services, applications, and databases on Team Foundation Server and on client computers.

Application Tier

The Team Foundation application tier contains the following ASP.NET Web services that correspond to respective proxies or object models on the client tier. These Web services are not intended for third-party integrators to program against. One exception to this policy is the MSBuild Web service that is documented in the Team Foundation Server extensibility documentation in the Visual Studio SDK.

  • Team Foundation Common Services

    • Registration Web service

    • Security Web service

    • Linking Web service

    • Eventing Web service

    • Classification Web service

  • Version Control Web service

  • Work Item Tracking Web service

  • Team Foundation Build Web service

Client Tier

The client tier uses the same Web services listed in the application tier to communicate with the Team Foundation application tier. It communicates through the Team Foundation Server object model. Besides the Team Foundation Server object model, the Team Foundation client tier consists of Visual Studio Industry Partners (VSIP) components, Microsoft Office integration, command-line interfaces, and a check-in policy framework for integration with Team Foundation Server and customized integration. For more information about how to extend and customize the client tier, see the extensibility documentation in the Visual Studio SDK.

 

Data Tier

The Team Foundation data tier consists of the following operational stores within SQL Server 2005. This includes data, stored procedures, and other associated logic. These operational stores are not generally intended for third-party integrators to program against.

  • Work item tracking

  • Version control

  • Team Foundation Common Services

  • Team Foundation Build

  • Reporting warehouse

 

Source:
http://msdn.microsoft.com/en-us/library/ms252473.aspx

 


 Print   
 ASP.Net View State Overview Minimize

 

What is a ViewState?

 

Introduction

A Web application by nature is stateless, which means information is not persisted with each round trip of a web-page. Any information entered in by the user and sent to the server is not returned to the client back. To get over this limitation of Web Programming, the ASP.Net framework includes several state-management features like:-

  • View state
  • Control state
  • Hidden fields
  • Cookies
  • Query strings

ViewState is a feature used by ASP.Net page framework to preserve page and control values between round trips. When the page is rendered, the state of the page and the values to be retained during postback are serialized into base64-encoded strings and stored in the view state hidden fields.

Since view state is sent as a hidden field, changes to view state can be made until the PreRenderComplete event. Once the page is rendered to the browser, changes to view state will not be saved.

You can access view state information using the page's ViewState property, which exposes a dictionary object. Because the data in view state is stored as a string, only objects that can be serialized can be stored.

In some circumstances, such as data-driven pages that are refreshed from the data store on each postback, you should turn view state off to remove the large hidden fields generated by data controls such as the GridView control.

Enable ViewState at different Levels

By default viewstate is enabled for a Web-page.

ViewState can be altered at different levels of a Web-Application.

Like:

· Application Level

· Page Level

· Control Level

Application level

At the Application Level all the pages in the application can have the viewstate configured by configuring the web.config file as shown below.

enableViewState="true" />

Page Level

To alter viewstate at the Page Level the EnableViewState attribute has to be added to the Page directive.

<%@ Page EnableViewState="False" Language="vb" Codebehind="WebForm1.aspx.vb" Inherits="WebApplication.WebForm1"%>

Control Level

Similarly, to enable view state at the control level, one has to set the ‘EnableViewState’ property of the control to ‘True’

Drawbacks of using a ViewState

Storing the view state in hidden fields (which is its default behavior) is appropriate for most of the time, but it has it own disadvantages too. Like,

  • The information being stored in hidden fields in the page, it increases the page size, which in turn significantly increases the network traffic and slows down the connection.
  • Another important consideration is that if the amount of data in a hidden field becomes large, some proxies and firewalls will prevent access to the page that contains them
  • Some mobile devices do not allow hidden fields at all

Persisting ViewState

By default view state is stored as hidden fields at the client side. In ASP.Net 2.0 you can change this default behaviour and store view state in another location such as a SQL Server database, by implementing the PageStatePersister Class.

Alternately, you can store the view state for your page in the Session Object on the server using the SessionPageStatePersister Class.

It should be noted that only types marked with Serializable can be stored in view state.

You can store objects of the following types in view state:

  • Strings
  • Integers
  • Boolean values
  • Array objects
  • ArrayList objects
  • Hash tables
  • Custom type converters

You can store other types of data as well, but the class must be compiled with the Serializable attribute so that view state can serialize them into XML.

You can set the maximum size for the hidden field which stores the viewstate by setting the MaxPageStateFieldLength field. When the MaxPageStateFieldLength property is set to a positive number, the view state sent to the client browser is broken into multiple hidden fields, and each field's value is less than the size specified in the MaxPageStateFieldLength property.

Set the value of the MaxPageStateFieldLength property in the pages element of the Web.config file.

Securing View State

View State when used as it is, Has its security concerns. Though the data stored in hidden fields are encoded using base64 encoding, it is still available to users to tamper with. So it is advisable to encrypt the data. To encrypt the data, set the page's ViewStateEncryptionMode property to true. If you store information in view state, you can use normal read and write techniques; the page handles all encryption and decryption for you. Encrypting view state data can affect the performance of your application, so do not use encryption unless you need it.

In the @ Page directive, set the ViewStateEncryptionMode attribute to "Always", as in the following example:

<% @Page ViewStateEncryptionMode="Always" ... %>

So that’s an overview of View State in ASP.Net

Happy Programming Robert


  
   Minimize

  
   Minimize

  
 Visit our Bookstore Minimize

  
 WinFX .Net 3.0 Minimize

  
   Minimize

  
Copyright 2007 by DotNetRobert.com   Terms Of Use  Privacy Statement
DotNetNuke® is copyright 2002-2009 by DotNetNuke Corporation