<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://weblogs.asp.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>ASP.NET Weblogs</title><link>http://weblogs.asp.net/</link><description /><dc:language>en-US</dc:language><generator>CommunityServer 2007 SP1 (Debug Build: 20510.895)</generator><item><title>A practicle guide to gateways - Geeks on a role S01E04</title><link>http://weblogs.asp.net/visualwebgui/archive/2009/07/04/a-practicle-guide-to-gateways-geeks-on-a-role-s01e04.aspx</link><pubDate>Fri, 03 Jul 2009 22:09:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139587</guid><dc:creator>Visual WebGui</dc:creator><slash:comments>3</slash:comments><description>The forth episode of “Geeks on a role”, the show presented for Web &amp;amp; Visual WebGui developers, was released. This episode focuses on gateways and how you can use them in your application. You can view the new episode following this link: A practicle guide to gateways...(&lt;a href="http://weblogs.asp.net/visualwebgui/archive/2009/07/04/a-practicle-guide-to-gateways-geeks-on-a-role-s01e04.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139587" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/AJAX/default.aspx">AJAX</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/WinForms/default.aspx">WinForms</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/web+applications/default.aspx">web applications</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/vb+6.0/default.aspx">vb 6.0</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/open+source/default.aspx">open source</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/web+2.0/default.aspx">web 2.0</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/web+design/default.aspx">web design</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/web+UI/default.aspx">web UI</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/web+developers/default.aspx">web developers</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/VB/default.aspx">VB</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/.net+developers/default.aspx">.net developers</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/community/default.aspx">community</category><category domain="http://weblogs.asp.net/visualwebgui/archive/tags/developers/default.aspx">developers</category></item><item><title>Microsoft Virtual labs - getting the lab notes directly</title><link>http://weblogs.asp.net/soever/archive/2009/07/03/microsoft-virtual-labs-getting-the-lab-notes-directly.aspx</link><pubDate>Fri, 03 Jul 2009 21:46:14 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139572</guid><dc:creator>svdoever</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Microsoft has great &lt;a href="http://www.microsoft.com/events/vlabs/default.mspx" target="_blank"&gt;virtual labs&lt;/a&gt; available, but it takes some time to get in there. If you just want the lab notes, type the following in Google: &lt;strong&gt;site:download.microsoftvirtuallabs.com filetype:pdf&lt;/strong&gt; or just follow &lt;a href="http://www.google.nl/search?q=site:download.microsoftvirtuallabs.com+filetype:pdf&amp;amp;hl=nl&amp;amp;rlz=1W1SUNA_en&amp;amp;as_qdr=all&amp;amp;num=100&amp;amp;start=100&amp;amp;sa=N" target="_blank"&gt;this link&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139572" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/soever/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Silverlight 3 ComboBox Control</title><link>http://weblogs.asp.net/manishdalal/archive/2009/07/03/silverlight-3-combobox-control.aspx</link><pubDate>Fri, 03 Jul 2009 17:11:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139438</guid><dc:creator>manish.dalal</dc:creator><slash:comments>0</slash:comments><description>&lt;P style="BACKGROUND: lightgray"&gt;This post outlines technique for displaying ComboBox control with .net RIA services to handle Foreign Key scenarios.&lt;/P&gt;
&lt;P align=justify&gt;When ComboBox control was introduced as part of Silverlight 2, I &lt;A href="http://weblogs.asp.net/manishdalal/archive/2008/09/28/combobox-in-datagrid.aspx" target=_blank mce_href="http://weblogs.asp.net/manishdalal/archive/2008/09/28/combobox-in-datagrid.aspx"&gt;blogged about a technique&lt;/A&gt; to use ComboBox control in foreign key scenarios, to workaround the lack of SelectedValue\SelectedValuePath property. I further enhanced the technique to handle cascading selection as outlined in &lt;A href="http://weblogs.asp.net/manishdalal/archive/2008/10/22/cascading-combobox.aspx" target=_blank mce_href="http://weblogs.asp.net/manishdalal/archive/2008/10/22/cascading-combobox.aspx"&gt;this post&lt;/A&gt;. Fast forward to Silverlight 3. ComboBox control still does not have SelectedValue\SelectedValuePath property and the same technique still works. Moreover, if you are using Silverlight 3 with .net RIA services, majority of the code is automatically generated by the framework. In fact, with Silverlight 3 and .net RIA services there is no requirement for SelectedValuePath property! &lt;/P&gt;
&lt;H5&gt;Background&lt;/H5&gt;
&lt;P align=justify&gt;In business applications with relation database as backend data store, foreign keys are often used to form association between entities. When working with such an entity in UI, a friendly description is shown to user, while system handles the actual foreign key value behind the scene. For ComboBox, this translates to displaying foreign key entity with a friendly description (perhaps using a custom template), and storing the results of selection as foreign key value to the base entity. However, ComboBox does not provide a SelectedValuePath property to set selected foreign key value back to the base entity. Simplest workaround is to use SelectedItem property. By adding Foreign key entity as a property to the base entity, we can data bind SelectedItem to the foreign key entity, automating the whole process. &lt;/P&gt;
&lt;P align=justify&gt;With .net RIA services, you can do this easily, just by setting &lt;STRONG&gt;Include&lt;/STRONG&gt; attribute on the associated foreign key entity. This results in foreign key entity being added a property to the base entity, which can then be data bound to SelectedItem property. Now when SelectedItem sets new foreign key entity, property setter in turn sets related foreign key value property, as indicated by the Association attribute. All of this code is already in place, generated automatically by the .net RIA services code generator. All you have to do is to data bind to SelectedItem and take care of ItemsSource.&lt;/P&gt;
&lt;H5&gt;Model&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; MARGIN: 5px 5px 5px 10px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=image border=0 alt=image align=right src="http://weblogs.asp.net/blogs/manishdalal/image4_1C4DA7F2.png" width=240 height=65 mce_src="http://weblogs.asp.net/blogs/manishdalal/image4_1C4DA7F2.png"&gt;&lt;/H5&gt;
&lt;P align=justify&gt;I will use the same Address/City model that I had previously used for Silverlight 2 ComboBox post, so that you can contrast the code, except that this time I will start with a database model. Model consists of Address and City tables.&lt;/P&gt;
&lt;H5&gt;Application&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; MARGIN: 5px 10px 5px 5px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=image border=0 alt=image align=left src="http://weblogs.asp.net/blogs/manishdalal/image_6D87EF4F.png" width=240 height=121 mce_src="http://weblogs.asp.net/blogs/manishdalal/image_6D87EF4F.png"&gt;&lt;/H5&gt;
&lt;P align=justify&gt;Create a Silverlight Navigation Application. Next add the ADO.NET Entity Data Model as AddressModel and generate the AddressEntities from database tables, Address and City.&lt;/P&gt;
&lt;P align=justify&gt;Next add a Domain Service Class as AddressService, adding Address and City entities. Select Enable editing and also generate associated meta data. &lt;/P&gt;
&lt;P align=justify&gt;In the class AddressMetadata, decorate City field with &lt;STRONG&gt;Include&lt;/STRONG&gt; attribute. &lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;SPAN style="COLOR: #0000ff"&gt;internal&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;sealed&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;class&lt;/SPAN&gt; AddressMetadata {

    &lt;SPAN style="COLOR: #008000"&gt;// Metadata classes are not meant to be instantiated.&lt;/SPAN&gt;
    &lt;SPAN style="COLOR: #0000ff"&gt;private&lt;/SPAN&gt; AddressMetadata() {
    }

    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; Guid AddressId;
    [Include]
    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; City City;
...&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P align=justify&gt;This will ensure that City entity in included as a property in the Address class and it is sent to client. Also modify GetAddress method in AddressService class to include City in retrieved data.&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; IQueryable&amp;lt;Address&amp;gt; GetAddress() {
    &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.Context.Address.Include(&lt;SPAN style="COLOR: #006080"&gt;"City"&lt;/SPAN&gt;);
}&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;Compile and build the application. &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;EM&gt;Auto generated City Property&lt;/EM&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P align=justify&gt;Find the Generated Code folder (unhide by clicking Show All Code for client application) and navigate to City field in Address entity class. Note that City property is decorated with Association attribute that ties Address.CityId foreign key to City.CityId primary key. Also note the Set property assessor for City property. &lt;EM&gt;When ever a new City value is set, it also automatically sets CityId property to proper foreign key value. Following is the auto generated code for the City Property:&lt;/EM&gt;&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;[Association(&lt;SPAN style="COLOR: #006080"&gt;"City_Address"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #006080"&gt;"CityId"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #006080"&gt;"CityId"&lt;/SPAN&gt;, IsForeignKey = &lt;SPAN style="COLOR: #0000ff"&gt;true&lt;/SPAN&gt;)]
&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; City City {
    get {
        &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; ((&lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;._city == &lt;SPAN style="COLOR: #0000ff"&gt;null&lt;/SPAN&gt;)) {
            &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;._city = &lt;SPAN style="COLOR: #0000ff"&gt;new&lt;/SPAN&gt; EntityRef&amp;lt;City&amp;gt;(&lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #006080"&gt;"City"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.FilterCity);
        }
        &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;._city.Entity;
    }
    set {
        City previous = &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.City;
        &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; ((previous != &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;)) {
            &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.ValidateProperty(&lt;SPAN style="COLOR: #006080"&gt;"City"&lt;/SPAN&gt;, &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;);
            &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; ((previous != &lt;SPAN style="COLOR: #0000ff"&gt;null&lt;/SPAN&gt;)) {
                previous.Address.Remove(&lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;);
            }
            &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;._city.Entity = &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;;
            &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; ((&lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt; != &lt;SPAN style="COLOR: #0000ff"&gt;null&lt;/SPAN&gt;)) {
                &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;.Address.Add(&lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;);
                &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.CityId = &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;.CityId;
            } &lt;SPAN style="COLOR: #0000ff"&gt;else&lt;/SPAN&gt; {
                &lt;SPAN style="COLOR: #0000ff"&gt;this&lt;/SPAN&gt;.CityId = &lt;SPAN style="COLOR: #0000ff"&gt;default&lt;/SPAN&gt;(Guid);
            }
        }
    }
}&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P align=justify&gt;So far, .net RIA services has generated all the code necessary for City property and tying it to corresponding CityId foreign key property. All that is now needed for us to do is to add code to allow ComboBox to find a City entity in the ItemsSource entity list.&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;Shared City Partial Class&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Add shared City partial class as City.shared.cs to the Silverlight server web application.&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;partial&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;class&lt;/SPAN&gt; City {

    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;override&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;bool&lt;/SPAN&gt; Equals(&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt; obj) {
        &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; (&lt;SPAN style="COLOR: #0000ff"&gt;null&lt;/SPAN&gt; == obj) &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;false&lt;/SPAN&gt;;
        City cityToCompare = obj &lt;SPAN style="COLOR: #0000ff"&gt;as&lt;/SPAN&gt; City;
        &lt;SPAN style="COLOR: #0000ff"&gt;if&lt;/SPAN&gt; (&lt;SPAN style="COLOR: #0000ff"&gt;null&lt;/SPAN&gt; == cityToCompare) &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;false&lt;/SPAN&gt;;
        &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; CityId.Equals(cityToCompare.CityId);
    }

    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;override&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;int&lt;/SPAN&gt; GetHashCode() {
        &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; CityId.GetHashCode();
    }
}&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;This code will be copied over to client and is used to find City entity from list of cities. &lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;City List Provider&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Next add class CityListProvider to the Silverlight client Application.&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;class&lt;/SPAN&gt; CityListProvider {
    AddressContext _dc;
    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; AddressContext DomainContext {
        set {
            _dc = &lt;SPAN style="COLOR: #0000ff"&gt;value&lt;/SPAN&gt;;
            _dc.LoadCity();
        }
    }
    &lt;SPAN style="COLOR: #0000ff"&gt;public&lt;/SPAN&gt; EntityList&amp;lt;City&amp;gt; CityList {
        get {
            &lt;SPAN style="COLOR: #0000ff"&gt;return&lt;/SPAN&gt; _dc.Cities;
        }
    }
}&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;&lt;EM&gt;&lt;STRONG&gt;ComboBox XAML&lt;/STRONG&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;Add a new page to display Address data using DataGrid. Following shows City column XAML snippet:&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn&lt;/SPAN&gt; &lt;SPAN style="COLOR: #ff0000"&gt;Header&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="City"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn.CellTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
        &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
            &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;TextBlock&lt;/SPAN&gt; &lt;SPAN style="COLOR: #ff0000"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="{Binding City.CityName}"&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;/&amp;gt;&lt;/SPAN&gt;
        &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn.CellTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn.CellEditingTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
        &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
            &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;ComboBox&lt;/SPAN&gt; &lt;SPAN style="COLOR: #ff0000"&gt;ItemsSource&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="{Binding CityList, Source={StaticResource cityListProvider}}"&lt;/SPAN&gt;
                      &lt;SPAN style="COLOR: #ff0000"&gt;SelectedItem&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="{Binding City, Mode=TwoWay}"&lt;/SPAN&gt;
                      &lt;SPAN style="COLOR: #ff0000"&gt;DisplayMemberPath&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="CityName"&lt;/SPAN&gt; &lt;SPAN style="COLOR: #0000ff"&gt;/&amp;gt;&lt;/SPAN&gt;
        &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
    &lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn.CellEditingTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;
&lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;data:DataGridTemplateColumn&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P align=justify&gt;Note that ComboBox control’s SelectedItem is directly bound to the City property. User is shown friendly “CityName” by setting DisplayMemberPath. Also add CityListProvider as a resource to the root Grid control.&lt;/P&gt;
&lt;P align=justify&gt;Modify &lt;STRONG&gt;&lt;EM&gt;code behind&lt;/EM&gt;&lt;/STRONG&gt; to set DataGrid ItemsSource to Address property on AddressContext (domain context) and load addresses using LoadAddress method of address domain context.&lt;/P&gt;
&lt;DIV&gt;&lt;PRE style="BORDER-BOTTOM-STYLE: none; PADDING-BOTTOM: 0px; LINE-HEIGHT: 12pt; BORDER-RIGHT-STYLE: none; BACKGROUND-COLOR: #f4f4f4; MARGIN: 0em; PADDING-LEFT: 0px; WIDTH: 100%; PADDING-RIGHT: 0px; FONT-FAMILY: consolas, 'Courier New', courier, monospace; BORDER-TOP-STYLE: none; COLOR: black; FONT-SIZE: 8pt; BORDER-LEFT-STYLE: none; OVERFLOW: visible; PADDING-TOP: 0px"&gt;AddressContext _dc;

&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt; AddressList_Loaded(&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt; sender, RoutedEventArgs e) {
    _dc = &lt;SPAN style="COLOR: #0000ff"&gt;new&lt;/SPAN&gt; AddressContext();
    addressDataGird.ItemsSource = _dc.Addresses;
    &lt;SPAN style="COLOR: #008000"&gt;//&lt;/SPAN&gt;
    CityListProvider cityListProvider = LayoutRoot.Resources[&lt;SPAN style="COLOR: #006080"&gt;"cityListProvider"&lt;/SPAN&gt;] &lt;SPAN style="COLOR: #0000ff"&gt;as&lt;/SPAN&gt; CityListProvider;
    cityListProvider.DomainContext = _dc;
    &lt;SPAN style="COLOR: #008000"&gt;//&lt;/SPAN&gt;
    _dc.LoadAddress();
}&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P align=justify&gt;&lt;IMG style="BORDER-RIGHT-WIDTH: 0px; MARGIN: 0px 10px 0px 5px; DISPLAY: inline; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px" title=image border=0 alt=image align=left src="http://weblogs.asp.net/blogs/manishdalal/image10_598E5CB9.png" width=149 height=124 mce_src="http://weblogs.asp.net/blogs/manishdalal/image10_598E5CB9.png"&gt;Compile and test the application. Note that appropriate City field is automatically selected when ComboBox drop down opens, thanks to Equality override in City class. When a new City is selected from the drop down, CityId is auto updated to reflect the new selection.&lt;/P&gt;
&lt;P&gt;Use of ComboBox for Implementing foreign key scenarios is now completely automatic with aid of .net RIA service. Framework generates necessary Foreign Key entity property and also generates corresponding code to keep underlying foreign key value in sync.&lt;/P&gt;
&lt;H5&gt;Steps to get started&lt;/H5&gt;
&lt;OL&gt;
&lt;LI&gt;Use Include attribute on foreign key entity. Also include foreign key entity in data retrieval. &lt;/LI&gt;
&lt;LI&gt;Provide Equality override code to find entity in entity list &lt;/LI&gt;
&lt;LI&gt;Data bind ItemsSource to entity list provider &lt;/LI&gt;
&lt;LI&gt;Data bind SelectedItem directly to foreign key entity &lt;/LI&gt;&lt;/OL&gt;
&lt;P&gt;Source Code: &lt;A href="http://cid-5e2cf1fe7786ab07.skydrive.live.com/self.aspx/BlogDemos/SL3ComboBox.zip" target=_blank mce_href="http://cid-5e2cf1fe7786ab07.skydrive.live.com/self.aspx/BlogDemos/SL3ComboBox.zip"&gt;SL3ComboBox.zip&lt;/A&gt; (417KB)&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: none; PADDING-TOP: 0px" id=scid:0767317B-992E-4b12-91E0-4F059A8CECA8:de8139c1-1413-45f3-967f-83fd6583ed3b class=wlWriterEditableSmartContent&gt;Technorati Tags: &lt;A href="http://technorati.com/tags/Silverlight" rel=tag mce_href="http://technorati.com/tags/Silverlight"&gt;Silverlight&lt;/A&gt;&lt;/DIV&gt;
&lt;DIV style="PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; PADDING-TOP: 0px" class=wlWriterHeaderFooter&gt;This work is licensed under a &lt;A href="http://creativecommons.org/licenses/by-sa/3.0/" mce_href="http://creativecommons.org/licenses/by-sa/3.0/"&gt;Creative Commons Attribution Share Alike license.&lt;/A&gt;&lt;/DIV&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139438" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/manishdalal/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://weblogs.asp.net/manishdalal/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/manishdalal/archive/tags/.NET/default.aspx">.NET</category></item><item><title>Daily tech links for .net and related technologies - July 1-4, 2009</title><link>http://weblogs.asp.net/sanjeevagarwal/archive/2009/07/03/daily-tech-links-for-net-and-related-technologies-july-1-4-2009.aspx</link><pubDate>Fri, 03 Jul 2009 15:31:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139401</guid><dc:creator>SanjeevAgarwal</dc:creator><slash:comments>4</slash:comments><description>Daily tech links for .net and related technologies - July 1-4, 2009 Web Development How to serve the same data in Json, Xml or Html with Asp.Net MVC ASP.NET MVC Screencasts AJAX Features in ASP.NET MVC 22 Extremely Useful Tools for Web Designers and Developers Easy E-Commerce With Magento Creating Excel spreadsheets .XLS and .XLSX in C# HighOnCoding: Get high on ASP.NET articles, videos, podcasts and more! SharePoint Search-as-You-Type with jQuery Three IIS Concepts ASP.NET Developers Should Know...(&lt;a href="http://weblogs.asp.net/sanjeevagarwal/archive/2009/07/03/daily-tech-links-for-net-and-related-technologies-july-1-4-2009.aspx"&gt;read more&lt;/a&gt;)&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139401" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/ASP.NET/default.aspx">ASP.NET</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/JQuery/default.aspx">JQuery</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/Silverlight/default.aspx">Silverlight</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/JavaScript/default.aspx">JavaScript</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/CSS/default.aspx">CSS</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/C_2300_/default.aspx">C#</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/VB.NET/default.aspx">VB.NET</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/WPF/default.aspx">WPF</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/WCF/default.aspx">WCF</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/MVC/default.aspx">MVC</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/ASP.NET+Dynamic+Data/default.aspx">ASP.NET Dynamic Data</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/LINQ/default.aspx">LINQ</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/XML/default.aspx">XML</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/Ajax/default.aspx">Ajax</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/SQL+Server/default.aspx">SQL Server</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/Database/default.aspx">Database</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/ORM/default.aspx">ORM</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/JQuery+UI/default.aspx">JQuery UI</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/Visual+Studio/default.aspx">Visual Studio</category><category domain="http://weblogs.asp.net/sanjeevagarwal/archive/tags/Entity+Framework/default.aspx">Entity Framework</category></item><item><title>How To: Install Windows 7/Vista From USB Drive [Detailed 100% Working Guide]</title><link>http://weblogs.asp.net/joseguay/archive/2009/07/03/how-to-install-windows-7-vista-from-usb-drive-detailed-100-working-guide.aspx</link><pubDate>Fri, 03 Jul 2009 15:04:40 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139382</guid><dc:creator>Jose Rolando Guay Paz</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;This guide works 100% for Vista &amp;amp; Windows 7 unlike most of the guides out there. I have seen many sites/blogs that have “Install Vista from USB guide” but either with incomplete steps or not working guide. I have also seen some guides that don’t’ use proper commands in this guide. After spending many hours I have come up with this 100% working guide.&lt;/p&gt;  &lt;p&gt;I just did this method on one of my friends machine and installed the new Windows 7 BETA. The main advantage is that by using USB drive you will be able to install Windows 7/Vista in just 15 minutes. You can also use this bootable USB drive on friend’s computer who doesn’t have a DVD optical drive.&lt;/p&gt;  &lt;p&gt;The method is very simple and you can use without any hassles. Needless to say that your motherboard should support USB Boot feature to make use of the bootable USB drive.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Requirements:&lt;/strong&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Motherboard supporting USB Boot. &lt;/li&gt;    &lt;li&gt;USB Flash Drive (Minimum 4GB). &lt;/li&gt;    &lt;li&gt;Windows 7 or Vista installation files. &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;img title="Bootable USB drive" border="0" alt="Bootable USB drive" src="http://www.intowindows.com/wp-content/uploads/2009/01/disk.jpg" width="260" height="101" /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.intowindows.com/how-to-install-windows-7vista-from-usb-drive-detailed-100-working-guide/"&gt;Full story here.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Enjoy!!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139382" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/joseguay/archive/tags/Windows+7/default.aspx">Windows 7</category><category domain="http://weblogs.asp.net/joseguay/archive/tags/Windows/default.aspx">Windows</category><category domain="http://weblogs.asp.net/joseguay/archive/tags/Community+News/default.aspx">Community News</category></item><item><title>CodingQA Podcast Episodes 10-12</title><link>http://weblogs.asp.net/asptest/archive/2009/07/03/codingqa-podcast-episodes-10-12.aspx</link><pubDate>Fri, 03 Jul 2009 14:01:02 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139334</guid><dc:creator>farmas</dc:creator><slash:comments>0</slash:comments><description>&lt;h4&gt;&lt;/h4&gt;  &lt;h4&gt;&lt;a href="http://codingqa.com/index.php?post_id=490794#"&gt;Episode 10 Project Structure &lt;/a&gt;&lt;/h4&gt;  &lt;p&gt;In this show Matthew and Federico talk about how the ASP.NET team structures it’s sources and the theory behind it all. They talk about how the team handles the organization of all of it’s sources and what seems to work well along with what seems to cause hang ups. &lt;/p&gt;  &lt;h4&gt;&lt;a href="http://codingqa.com/index.php?post_id=493601#"&gt;Episode 11 Interviewing Hong Li &lt;/a&gt;&lt;/h4&gt;  &lt;p&gt;In the eleventh installment of &lt;a href="http://www.codingqa.com/"&gt;Coding QA&lt;/a&gt; Federico is on vacation so Matthew sits down with his mentor, Hong Li, for an interview. Join Matthew as he learns a little about one of his fellow team members, servicing an released product, and working with team members that are offshore in China. &lt;/p&gt;  &lt;h4&gt;&lt;a href="http://codingqa.com/index.php?post_id=496207#"&gt;Episode 12 Jim Wang on Microsoft AJAX &lt;/a&gt;&lt;/h4&gt;  &lt;p&gt;In the twelfth installment of &lt;a href="http://www.codingqa.com/"&gt;Coding QA&lt;/a&gt; Federico is still enjoying his vacation so Matthew sits down with his officemate Jim Wang to discuss the ins and outs of test the Microsoft AJAX libraries. Tune in as Matthew picks Jim’s brain on what it was like to test a client side framework. &lt;/p&gt;  &lt;p&gt;&amp;#160; &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Federico Silva Armas     &lt;br /&gt;SDET, ASP.NET QA Team&lt;/strong&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139334" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/asptest/archive/tags/Testing/default.aspx">Testing</category><category domain="http://weblogs.asp.net/asptest/archive/tags/ASP.NET/default.aspx">ASP.NET</category></item><item><title>Creating IT strategy (with a little help from enterprise architecture)</title><link>http://weblogs.asp.net/ngur/archive/2009/07/03/creating-it-strategy-with-a-little-help-from-enterprise-architecture.aspx</link><pubDate>Fri, 03 Jul 2009 10:48:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139252</guid><dc:creator>nattYGUR</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;&lt;span class="Normal"&gt;&lt;font size="4"&gt;Creating IT strategy is one of the complicated 
task that I know. To create a good IT strategy, you have to use many ingredients 
from different types and sources. Those ingredients&lt;span&gt;&amp;nbsp; &lt;/span&gt;should be used 
in unique combination that can be cooked and then be served as a delicious Cake 
to different customers ( IT workers, IT management, Information workers, 
enterprise CxOs and sometimes the board). In this post I'll try to describe 
what, and who I manage to create an IT strategy.&lt;/font&gt; 
&lt;p&gt;&lt;font size="4"&gt;Usually I tend to split my work into 6 main work 
streams:&lt;/font&gt;&lt;/p&gt;
&lt;ol type="1"&gt;&lt;li value="1"&gt;&lt;span&gt;&lt;font size="4"&gt;Collecting as-is data&lt;/font&gt;&lt;/span&gt; 
&lt;ol type="a"&gt;&lt;li value="1"&gt;&lt;span&gt;&lt;font size="4"&gt;Mapping IT assets: collecting existing IT assets 
to understand what IT manage and to get a hint how.&lt;/font&gt;&lt;/span&gt; 
&lt;ol type="i"&gt;&lt;li value="1"&gt;&lt;span&gt;&lt;font size="4"&gt;Information model: information entities and their 
relations. Helps to understand interaction between business units and level of 
integration from business perspective. Information model is also being used as 
an input to Information management.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="2"&gt;&lt;span&gt;&lt;font size="4"&gt;Applications and products : applications 
(internal development), External products and relations. Will be used for 
different aspects as well as mapping to core-context model.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="3"&gt;&lt;span&gt;&lt;font size="4"&gt;Technologies, Databases and servers : collect 
data about technical component and their relations. Used to understand what 
stand behind each application/product and to find out if resources are balanced 
(from usage point of view) and if new technologies (such as virtualization) are 
applicable. &lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="4"&gt;&lt;span&gt;&lt;font size="4"&gt;Communication infrastructures : same as 
technologies, but focused on communication.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="5"&gt;&lt;span&gt;&lt;font size="4"&gt;DRP : current design recovery plan. 
&lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="6"&gt;&lt;span&gt;&lt;font size="4"&gt;Information security : what procedures and IT 
assets are in place to support information security.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="7"&gt;&lt;span&gt;&lt;font size="4"&gt;Information from externals: what type of 
information the enterprise is getting from externals, in what format and how the 
data is being handled by the enterprise.&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;
&lt;ol type="a"&gt;&lt;li value="2"&gt;&lt;span&gt;&lt;font size="4"&gt;Information management: how information is 
manage, who own information, who use it, what is each information availability, 
etc'&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="3"&gt;&lt;span&gt;&lt;font size="4"&gt;Program of Work (POW) management : what is the 
current (if exists), how POW is being prepared, who is involved in this effort, 
what are the inputs for the process, is the POW address IT needs or just 
business needs, is it multiyear plan, is the plan enable prioritization and 
control, do we have milestones, deliverables and time tables, etc'&lt;/font&gt;&lt;/span&gt; 

&lt;/li&gt;&lt;li value="4"&gt;&lt;span&gt;&lt;font size="4"&gt;Budget management : who current budget is build 
(centralized or separated between business units), how the process is being 
done, who is involved, what are the inputs, is it multiyear budget, do we have 
breakdown of budget chapters, is the budget structure represent the major areas 
of expanses, is the structure enable management queries regarding budget 
behavior, Can we optimize budget without changing IT deliverables, 
etc'&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="5"&gt;&lt;span&gt;&lt;font size="4"&gt;IT equipment procurement management: are there 
any policies regarding procurement (Tender, predefined suppliers, how the 
process is done, where), what are the relations to other business units (when IT 
purchases), how IT physical assets are managed, any retire principles for IT 
equipment, etc'&lt;span&gt;&amp;nbsp; &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="6"&gt;&lt;span&gt;&lt;font size="4"&gt;Project management : is there one and uniform 
process for IT project, is the project follow PRINCE2, PMBOK or any other 
project management methodology.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="7"&gt;&lt;span&gt;&lt;font size="4"&gt;IT infrastructure management (ITIL) :&lt;span&gt;&amp;nbsp; 
&lt;/span&gt;checking who much ITIL is implemented (even if its not ITIL explicitly) . 
Are we implementing any management of Incident, problem, configuration, release, 
change, capacity, financial, availability, continuity and service 
level.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="8"&gt;&lt;span&gt;&lt;font size="4"&gt;Governance: mapping the IT against governance 
frameworks such as COBIT.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="9"&gt;&lt;span&gt;&lt;font size="4"&gt;IT organizational structure and Human resources 
management. Existing structure and how it should support current tasks, one shop 
or shop per business unit, duplicated teams, location of teams&lt;span&gt;&amp;nbsp; &lt;/span&gt;in 
hierarchy, are teams located in the same physical location, compensation per 
role, etc'. &lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="10"&gt;&lt;span&gt;&lt;font size="4"&gt;Training / Education : Current training and 
education plan or opportunities available, are they per role, are they address 
known gap in worker knowledge, are they related to POW, etc'&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="11"&gt;&lt;span&gt;&lt;font size="4"&gt;IT management - supporting forums:&lt;span&gt;&amp;nbsp; 
&lt;/span&gt;Are there any IT or enterprise wide forums that serve IT needs or IT is 
involved in, what is the perception of IT, is the CIO has CEO support, what is 
the CIO location in organization structure, 
etc'&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;
&lt;ol type="1"&gt;&lt;li value="2"&gt;&lt;span&gt;&lt;font size="4"&gt;Understand the business, future direction and who 
it impact IT&lt;/font&gt;&lt;/span&gt; 
&lt;ol type="a"&gt;&lt;li value="1"&gt;&lt;span&gt;&lt;font size="4"&gt;Business capabilities : what are the functions 
performed by the business to reach goals and objectives. Including new 
capabilities (or changes in capabilities) that support new business directions, 
or any business change. Used to see alignment between IT and business needs 
(current and future)&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="2"&gt;&lt;span&gt;&lt;font size="4"&gt;End-to-End business processes (Value chain): 
mapping main processes that generate value to the enterprise. Used to see 
interaction and integration between business 
units.&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;/ol&gt;
&lt;ol type="1"&gt;&lt;li value="3"&gt;&lt;span&gt;&lt;font size="4"&gt;Understand new technology future IT directions 
and how they can Impact the business. &lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="4"&gt;&lt;span&gt;&lt;font size="4"&gt;Create TO-BE architecture: Creating new 
architecture (blueprint or high level architecture) based on business 
directions, new technology options, key finding from IT assets mapping and IT 
as-is mapping.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="5"&gt;&lt;span&gt;&lt;font size="4"&gt;Identify gaps between as-is and to-be: list all 
gaps in each element that we mapped in the "AS-IS" &lt;/font&gt;&lt;/span&gt;
&lt;/li&gt;&lt;li value="6"&gt;&lt;span&gt;&lt;font size="4"&gt;Translate gaps into a roadmaps with dependencies 
and assignments : group gaps into projects, write one page of project high level 
analysis, assign resources to projects and&lt;span&gt;&amp;nbsp; &lt;/span&gt;creating a road map 
(taking in account dependencies )&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;
&lt;p&gt;&lt;font size="4"&gt;Then I translate the work streams data into a word document with 
6 main chapters:&lt;/font&gt;&lt;/p&gt;
&lt;ol type="1"&gt;&lt;li value="1"&gt;&lt;span&gt;&lt;font size="4"&gt;Executive summary. Actually I'm writing different 
executive summary for each audience using&lt;span&gt;&amp;nbsp; &lt;/span&gt;relevant linkage to 
document paragraphs. I found out that although it's more work it proves to be 
more digestible.&lt;span&gt;&amp;nbsp; &lt;/span&gt;This way I can use different lingo and sharp 
different aspects of the strategy for each audience without rewriting the entire 
document and with ability for adjustments on the other hand.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="2"&gt;&lt;span&gt;&lt;font size="4"&gt;Description of the as-is + to-be. Describe the 
data as it was collected from different roles. This part should hold just facts. 
I'm using it to build my findings on top of agreed facts.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="3"&gt;&lt;span&gt;&lt;font size="4"&gt;Analysis : TO-BE based on analysis of collected 
data.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="4"&gt;&lt;span&gt;&lt;font size="4"&gt;Blue-prints and Principles : based on the 
analysis what need to be done, and which principles should be followed by the 
enterprise.&lt;/font&gt;&lt;/span&gt; 
&lt;/li&gt;&lt;li value="5"&gt;&lt;span&gt;&lt;font size="4"&gt;Roadmap : Translate blueprints and principles 
into defined projects with assignments and dependencies with other projects and 
resources.&lt;/font&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/span&gt;&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139252" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/ngur/archive/tags/Enterprise+Architecture/default.aspx">Enterprise Architecture</category><category domain="http://weblogs.asp.net/ngur/archive/tags/General+Software+Development/default.aspx">General Software Development</category></item><item><title>Fill out a survey, win a chance for a SharePoint Conference 2009 pass</title><link>http://weblogs.asp.net/bsimser/archive/2009/07/02/fill-out-a-survey-win-a-chance-for-a-sharepoint-conference-2009-pass.aspx</link><pubDate>Fri, 03 Jul 2009 02:13:16 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7139021</guid><dc:creator>Bil Simser</dc:creator><slash:comments>1</slash:comments><description>&lt;p&gt;&lt;img style="border-bottom: 0px; border-left: 0px; margin: 0px 20px 0px 0px; display: inline; border-top: 0px; border-right: 0px" title="Free? Sure, why not?" border="0" alt="Free? Sure, why not?" align="left" src="http://weblogs.asp.net/blogs/bsimser/pablo_7BB55C22.jpg" width="244" height="200" /&gt; Yeah, title says all. &lt;a href="http://www.mindsharp.com/"&gt;Mindsharp&lt;/a&gt;, &lt;a href="http://www.nintex.com/"&gt;Nintex&lt;/a&gt;, and &lt;a href="http://www.combined-knowledge.com/"&gt;Combined Knowledge&lt;/a&gt; are sponsoring a &lt;a href="http://www.sharepointsurvey.com/"&gt;Global SharePoint Survey&lt;/a&gt;. This is an independent survey that you can fill out to let them know about your experience with adoption and usage of SharePoint from your perspective. The survey is quick (only 15 questions) and most questions are multiple choice. You could probably let your cat or two year old fill it out (I did) but also consider taking a few minutes to put some thought behind it (unlike what I did). &lt;/p&gt;  &lt;p&gt;In the end, you get a chance to win a conference pass to the &lt;a href="http://www.mssharepointconference.com/Pages/default.aspx"&gt;Microsoft SharePoint Conference 2009&lt;/a&gt; (October 19-22) in Las Vegas. This pass is worth $1,119 USD if purchased with real money. A winner will be drawn randomly after the closing of the survey July 17th then notified by email and/or phone. Note the contest is *only* for the conference pass. You still need to provide a way to get there and pay for your hotel, mini-bar, and pub crawl expenses (and trust me, when you hang with SharePoint dudes, the bar bill can get pretty hefty). Still, it’s a short slice out of your life for a chance to make it big in the city that never sleep.&lt;/p&gt;  &lt;p&gt;You can fill out the survey &lt;a href="http://www.sharepointsurvey.com/"&gt;here&lt;/a&gt;. Enjoy and good luck!&lt;/p&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7139021" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/bsimser/archive/tags/SharePoint/default.aspx">SharePoint</category></item><item><title>Your Company's Next Senior Software Architect???</title><link>http://weblogs.asp.net/jtobler/archive/2009/07/02/your-company-s-next-senior-software-architect.aspx</link><pubDate>Thu, 02 Jul 2009 23:08:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7138943</guid><dc:creator>CSharpener</dc:creator><slash:comments>0</slash:comments><description>I would *love* to join a new and exciting software development team that has a single-minded focus on delivering high-quality software products to great customers.  

Perhaps that team is working in your company!  

Please have a look at my resume (http://weblogs.asp.net/jtobler/articles/48839.aspx) to find out if my skills match your customers' needs!  If interested, contact me by email so I can get to work with you as quickly as possible!  

I currently live in San Diego, CA, but would consider relocating to Las Vegas, NV, or the Miami Ft. Lauderdale area, FL, to join the right company with the right challenge!


&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7138943" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B002E00_NET+C_23005D00_/default.aspx">[.NET C#]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_Languages_5D00_/default.aspx">[Languages]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_Software+Architecture_5D00_/default.aspx">[Software Architecture]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/Human+Stuff/default.aspx">Human Stuff</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/General/default.aspx">General</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_SoftDev_5D00_/default.aspx">[SoftDev]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_General_5D00_/default.aspx">[General]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_ASP.NET_5D00_/default.aspx">[ASP.NET]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_TDD_5D00_/default.aspx">[TDD]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B00_GameDev_5D00_/default.aspx">[GameDev]</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/General+Software+Development/default.aspx">General Software Development</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/.NET/default.aspx">.NET</category><category domain="http://weblogs.asp.net/jtobler/archive/tags/_5B002E00_NET_5D00_/default.aspx">[.NET]</category></item><item><title>Client App Dev MVP for 2009!</title><link>http://weblogs.asp.net/aaguiar/archive/2009/07/02/client-app-dev-mvp-for-2009.aspx</link><pubDate>Thu, 02 Jul 2009 16:55:00 GMT</pubDate><guid isPermaLink="false">c06e2b9d-981a-45b4-a55f-ab0d8bbfdc1c:7138760</guid><dc:creator>aaguiar</dc:creator><slash:comments>1</slash:comments><description>&lt;P&gt;I'll be an MVP for Client App Development for 2009! &lt;/P&gt;
&lt;P&gt;I want to thank to all the people in Microsoft Uruguay and Latinoamerica that kept inviting me to talk in their events. &lt;/P&gt;
&lt;P&gt;&lt;A href="https://mvp.support.microsoft.com/default.aspx/profile/andres.aguiar" mce_href="https://mvp.support.microsoft.com/default.aspx/profile/andres.aguiar"&gt;Here&lt;/A&gt; is my almost-empty MVP Profile. I'll complete it during the following days.&lt;/P&gt;
&lt;P&gt;Thanks! &lt;/P&gt;&lt;img src="http://weblogs.asp.net/aggbug.aspx?PostID=7138760" width="1" height="1"&gt;</description><category domain="http://weblogs.asp.net/aaguiar/archive/tags/community+news/default.aspx">community news</category></item></channel></rss>