# Saturday, 26 February 2011

Your business, your fame. That’s the title of the new Belgian Microsoft contest. It’s a great opportunity for you to learn to work with Azure, put your company in the spotlights and win! There are some cool prizes, besides eternal fame, to win.

The link where the big adventure can begin for you is: http://yourbusinessyourfame.cloudapp.net/. Good luck!

Grz, Kris.

Saturday, 26 February 2011 09:34:53 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Friday, 18 February 2011

Yesterday I attended the second edition of Microsoft WebCafe. A social get together with tech people hosted by Microsoft and each time at a different location. This time it was at the offices of Combell, an important player in the hosting market.

After a very friendly welcome, and good catering, it was first a social interacting time. Then during a half hour 3 short sessions passed by which were about several topics:

  • Scaling in the cloud
  • mijnTVgids, an application for different mobile devices
  • Discovering interesting people at Microsoft Belgium

Then a break of about another half hour with social interaction and another 3 sessions:

  • iRail Windows Phone 7 application
  • Umbraco, a short introduction
  • 10 minutes to discover Microsoft Web apps & tools

I got to know new people, had fun and got some nice and short demos. An evening well spent and I’m already looking forward going to the next edition.

Grz, Kris.

Friday, 18 February 2011 13:21:00 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, 01 February 2011
Last week a Scott Hanselman came to Belgium for the first Webcamps. I could only attend the first 2 hours due to client obligations but I was glad to see quite some familiar faces and Scott performing in his usual way during the first part of the whole show. Luckily for everyone who couldn’t attend, or only partially like myself, the entire day got recorded. You can watch the shows here
Tuesday, 01 February 2011 01:13:00 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Wednesday, 19 January 2011

It was lingering for some time but I finally made it across the border of the magical number of 150.000 recognition points over at the ASP.NET forums. I’m glad I did as it shows the appreciation of those thousands of people I have helped out in the past trying to find their solution for their problems. I don’t know to how many applications my answers made a difference in order to get things done and shipped with happy customers as an end result but I’m sure it were more than just a few.

forumshalloffame

Grz, Kris.

Wednesday, 19 January 2011 15:38:32 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [4]  | 
# Monday, 03 January 2011

As (web)developer mainly living inside Visual Studio during the day at work I usually make use of the built in webserver of this IDE, namely Cassini. However when I close the debugging session one or more instances, especially more when I’m inside one of my test projects, keep on running. I don’t like to stop them all one by one so I created a simple file with notepad and saved it as KillAllRunningCassinis.bat. For people old enough to remember, .bat files were much used in MS-DOS but still can be used in Windows.

The content of this simple file is:

taskkill /im webdev.webserver.exe

Taskkill is a handy tool to instantly kill processes on your Windows machine. To read more about it take a look at the Technet documentation.

Grz, Kris.

Monday, 03 January 2011 21:42:53 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Saturday, 01 January 2011

People tend to write things down after events and in the mean time like to write down what they hope or expect in the future. I’m no exception on that part so here goes:

2010

Travelling

2010 was certainly an exciting year for travelling. I went to several places I’ve never been before or heard about before. Others were places I wanted to visit since I was kid:

  • USA: I went first to the MVP summit in Washington state, then took the plane to Arizona and with a big hired SUV Kurt Claeys (a former colleague of mine) toured around in several states (Arizone, Utah, Nevada, California). We visited the Grand canyon, Monument valley, Antelope canyon, Bryce canyon, Zion and from Las Vegas we also visited Death valley and the Hoover dam. It was quite a great trip though sometimes pretty cold (-20°C) but we had fun and great views. Definitely a great trip!
  • Lebanon: this was certainly a revelation to me. A country with rich culture, ancient buildings, tasty food (I got introduced to the traditional food of the country from day 1 by my friends and was very fond of the tabbouleh, knefeh and the zaatar w jebneh). The places that impressed me were certainly Baalbeck and the Jeita grottos. I was amazed to see how modern Beirut itself was. Certainly worth more visits in the future as I met quite a lot of very nice people I would like to see again.
  • Turkey: Ah, some well deserved vacation. Well vacation, our vacation was so immensely stuffed with things to do and to see that we hardly got time to sleep or to relax. It was a great vacation though especially the jeep safari.
  • France: Paris… As I recently got to hear from a guy presenting: it’s at the end of the parking to the right when you come from Antwerp… Well a parking that took me like 4 hours driving but it was certainly worth the effort. A couple of my best friends moved there so I got my personal city guides in this beautiful city which, I know it sounds strange, never visited before.

Friends

Even though I got very busy due to work I like to keep connected with my friends, even though they live far away from home. In 2010 I also got to know a lot of new people whom I hope to see again soon in the future. Especially in Lebanon I got to know a lot of interesting people.

Presentations, courses, community work and user groups

2010 sure was an exciting time for me. I gave the following presentations:

During the year I also gave several courses for Ordina, the company I work for:

  • Programming in ASP.NET 2.0 and 3.5 and ajax
  • Creating custom controls in ASP.NET
  • Hands on guide to best practices in ASP.NET
  • SAP integration via WCF in .NET applications

I’ve been around since July first 2002 on the ASP.NET forums and still continue to date to try to give help to others in need being both an answerer and moderator. Also this year I started out on stackoverflow, another vibrant community site for technical questions.

I also got renewed in April as an MVP for ASP.NET. An award of which I’m very proud.

In September I also became one of the board members of Azug, the Belgian Windows Azure User Group.

2011

There are quite a lot of things that I’ve planned for the coming year and if all come true then some big life changing events are to be expected. Don’t worry, I’ll keep you up to date when the time’s right.

Personally I already lost 5 kg since August and I hope to continue a further loss on that part. I also plan to go sporting more during the week as well. I hope to travel again and see more of my friends at the same time. I also wish to give even more presentations and courses as I like to do them a lot. I’ll stay close to the community and you’ll mostly see me as usual at technical sessions. Either giving them or listening and learning from others.

Furthermore I wish everyone the best of health and love for the coming year.

Grz, Kris.

Saturday, 01 January 2011 19:03:00 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Wednesday, 15 December 2010

With lots of goodies in it. Feels like Santa’s early this year Smile.

This is taken from the overview of the download page:

The Windows Azure Platform Training Kit includes a comprehensive set of technical content including hands-on labs, presentations, and demos that are designed to help you learn how to use the Windows Azure platform including: Windows Azure, SQL Azure and the Windows Azure AppFabric.
The December update provides new and updated hands-on labs, demo scripts, and presentations for the Windows Azure November 2010 enhancements and the Windows Azure Tools for Microsoft Visual Studio 1.3. These new hands-on labs demonstrate how to use new Windows Azure features such as Virtual Machine Role, Elevated Privileges, Full IIS, and more. This release also includes hands-on labs that were updated in late October and November 2010 to demonstrate some of the new Windows Azure AppFabric services that were announced at the Professional Developers Conference (http://microsoftpdc.com) including the Windows Azure AppFabric Access Control Service, Caching Service, and the Service Bus.
Some of the specific changes with the December update of the training kit include:

  • [Updated] All demos were updated to the Azure SDK 1.3
  • [New demo script] Deploying and Managing SQL Azure Databases with Visual Studio 2010 Data-tier Applications
  • [New presentation] Identity and Access Control in the Cloud
  • [New presentation] Introduction to SQL Azure Reporting
  • [New presentation] Advanced SQL Azure
  • [New presentation] Windows Azure Marketplace DataMarket
  • [New presentation] Managing, Debugging, and Monitoring Windows Azure
  • [New presentation] Building Low Latency Web Applications
  • [New presentation] Windows Azure AppFabric Service Bus
  • [New presentation] Windows Azure Connect
  • [New presentation] Moving Applications to the Cloud with VM Role

Grz, Kris.

Wednesday, 15 December 2010 14:48:00 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Friday, 10 December 2010

Since several months now I’m one of the board members of Azug, the Belgian Windows Azure User Group. Feweb, the Belgian organisation for web developers/designers, loved to put several Belgian user groups in the spotlight and asked them to give a short presentation about their workings, their common intrest, … Since I enjoy giving presentations I signed myself up and gave the following slidedeck:

If you’re from Belgium, or passing by in our lovely country, and we have a meeting planned then simply sign up and come over. We like you to be there!

Grz, Kris.

Friday, 10 December 2010 02:56:00 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Tuesday, 30 November 2010
Microsoft released a new SDK and toolset for Windows Azure, currently version 1.3. Be sure to check it out:
Tuesday, 30 November 2010 20:11:45 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  | 
# Saturday, 20 November 2010

ASP.NET provides developers with some very handy controls like a Treeview or a Menu control for displaying data coming from a sitemap file. Though a very common scenario sometimes these are simply too heavy weight to be used and on the ASP.NET forums I simply suggest an alternative by using a simple DataList control. For future reference to point out on the forums I decided to write this little code snippet:

The sitemap file:

<?xml version="1.0" encoding="utf-8" ?>
<
siteMap xmlns="http://schemas.microsoft.com/AspNet/SiteMap-File-1.0"
>
    <
siteMapNode url="" title=""  description=""
>
        <
siteMapNode url="http://www.microsoft.com" title="Microsoft"  description=""
/>
        <
siteMapNode url="http://blog.krisvandermast.com" title="Kris' blog"  description=""
/>
    </
siteMapNode
>
</
siteMap
>

The markup of a simple ASP.NET webform:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns
="http://www.w3.org/1999/xhtml">
<
head runat="server">
    <title></title>
    <style type="text/css">
   
    li {
        border-left:2px solid #000;
        list-style:none;
        margin-right:10px;
        padding-left:10px;
        float:left;
    }
   
    </style
>
</
head
>
<
body>
    <form id="form1" runat="server">
    <div>
        <asp:SiteMapDataSource runat="server" ID="smd" ShowStartingNode="false" />
        <asp:DataList runat="server" ID="menu" DataSourceID="smd" RepeatDirection="Horizontal" RepeatLayout="Flow">
            <HeaderTemplate>
                <ul>
            </HeaderTemplate>
            <ItemTemplate>
                <li>
                    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>' 
                        Text='<%# Eval("Title") %>'></asp:HyperLink>
                </li>
            </ItemTemplate>
            <FooterTemplate>
                </ul>
            </FooterTemplate>
        </asp:DataList>
    </div>
    </form
>
</
body
>
</
html
>

The output:

datalist_sitemap_menu

The benefits of using the DataList control is that it’s versatile, lightweight, easy to program but also that it supports item selection. That Could be quite an asset when a page wants to set the SelectedIndex from codebehind to have selection in the menu itself. Note the extra added SelectedItemTemplate and the added class=”selected” in the <li> element. This will, thanks to the css class, make the background color look red and as such a selected menu item.

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<%@ Register Assembly="WebApplication1" Namespace="WebApplication1" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html xmlns
="http://www.w3.org/1999/xhtml">
<
head runat="server">
    <title></title>
    <style type="text/css">
        li {
            border-left: 2px solid #000;
            list-style: none;
            padding-right: 10px;
            padding-left: 10px;
            float: left;
        }
       
        .selected {
            background-color:Red;
        }
    </style
>
</
head
>
<
body>
    <form id="form1" runat="server">
    <div>
        <asp:SiteMapDataSource runat="server" ID="smd" ShowStartingNode="false" />
        <asp:DataList runat="server" ID="menu" DataSourceID="smd" RepeatDirection="Horizontal"
            RepeatLayout="Flow">
            <HeaderTemplate>
                <ul>
            </HeaderTemplate>
            <ItemTemplate>
                <li>
                    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>' 
                        Text='<%# Eval("Title") %>'></asp:HyperLink>
                </li>
            </ItemTemplate>
            <SelectedItemTemplate>
               <li class="selected">
                    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>' 
                        Text='<%# Eval("Title") %>'></asp:HyperLink>
                </li>
            </SelectedItemTemplate>
            <FooterTemplate>
                </ul>
            </FooterTemplate>
        </asp:DataList>
    </div>
    </form
>
</
body
>
</
html
>

And in the Page_Load event:

protected void Page_Load(object sender, EventArgs e)
{
    menu.SelectedIndex = 1;
}

This outputs the following:

datalist_sitemap_menu2

Another option, which generates less span elements would be to use a Repeater control instead:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1" %>

<%@ Register assembly="WebApplication1" namespace="WebApplication1" tagprefix="cc1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns
="http://www.w3.org/1999/xhtml">
<
head runat="server">
    <title></title>
    <style type="text/css">
   
    li {
        border-left:2px solid #000;
        list-style:none;
        margin-right:10px;
        padding-left:10px;
        float:left;
    }
   
    </style
>
</
head
>
<
body>
    <form id="form1" runat="server">
    <div>
        <asp:SiteMapDataSource runat="server" ID="smd" ShowStartingNode="false" />
        <div id="menu">
            <asp:Repeater runat="server" ID="rpt" DataSourceID="smd">
                <HeaderTemplate>
                    <ul>
                </HeaderTemplate>
                <ItemTemplate>
                    <li>
                        <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("Url") %>' 
                            Text='<%# Eval("Title") %>'></asp:HyperLink>
                    </li>
                </ItemTemplate>
                <FooterTemplate>
                    </ul>
                </FooterTemplate>
            </asp:Repeater>
        </div>
    </div>
    </form
>
</
body
>
</
html
>

Grz, Kris.

ASP.NET | CSS | Datalist | Sitemap
Saturday, 20 November 2010 20:20:25 (GMT Standard Time, UTC+00:00)  #    Disclaimer  |  Comments [0]  |