<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" version="2.0">
  <channel>
    <title>Implements IVillage - Development</title>
    <link>http://www.implementsivillage.net/</link>
    <description>It takes a village to keep up with .Net</description>
    <language>en-us</language>
    <copyright>Christian M Loris</copyright>
    <lastBuildDate>Mon, 12 May 2008 12:58:48 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 1.9.6264.0</generator>
    <managingEditor>cloris@lorisc.com</managingEditor>
    <webMaster>cloris@lorisc.com</webMaster>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=28dc75a1-0a92-4383-8129-89be2f22555c</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,28dc75a1-0a92-4383-8129-89be2f22555c.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,28dc75a1-0a92-4383-8129-89be2f22555c.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=28dc75a1-0a92-4383-8129-89be2f22555c</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
So Microsoft comes to the Orange County Convention Center for two weeks in June (aka
TechEd).  They paid for the thing for two whole weeks.  The weekend between
the IT Pro Week and the Dev Week is part of that two weeks and the aforementioned
facility will be sitting idle.  What so you do?  Let the community have
it...
</p>
        <p>
          <strong>
            <font color="#ff0000" size="6">Microsoft Commmunity Summit 2008 </font>
          </strong>
        </p>
        <div id="slogan">
          <strong>
            <font color="#ff0000" size="4">Orlando Convention Center,
June 7 and 8</font>
          </strong>
        </div>
        <div>
          <br />
          <font size="3">So what is it?  Basically, the Florida User Group Communities
were asked what would they do with the Orlando Convention Center for a weekend? 
What they came up with was a <b>FREE weekend</b> with loads of great content. 
Get all the latest information and registration at </font>
          <a href="http://www.floridatweener.com/">
            <font size="3">http://www.floridatweener.com</font>
          </a>
          <font size="3">. </font>
        </div>
        <div>
          <font size="3">
          </font> 
</div>
        <div>I hope to be there.  I am attending Tech Ed on the first week.  It
looks like it is going to be an amazing event.  Joe Heally put the call out to
the community and this is what happened.  Take a look at the agenda and you'll
be amazed.  Hope to see you there.
</div>
        <!--       FOOTER      -->
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=28dc75a1-0a92-4383-8129-89be2f22555c" />
      </body>
      <title>Microsoft Commnity Summit 2008</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,28dc75a1-0a92-4383-8129-89be2f22555c.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,28dc75a1-0a92-4383-8129-89be2f22555c.aspx</link>
      <pubDate>Mon, 12 May 2008 12:58:48 GMT</pubDate>
      <description>&lt;p&gt;
So Microsoft comes to the Orange County Convention Center for two weeks in June (aka
TechEd).&amp;nbsp; They paid for the thing for two whole weeks.&amp;nbsp; The weekend between
the IT Pro Week and the Dev Week is part of that two weeks and the aforementioned
facility will be sitting idle.&amp;nbsp; What so you do?&amp;nbsp; Let the community have
it...
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;font color=#ff0000 size=6&gt;Microsoft Commmunity Summit 2008 &lt;/font&gt;&lt;/strong&gt;
&lt;/p&gt;
&lt;div id=slogan&gt;&lt;strong&gt;&lt;font color=#ff0000 size=4&gt;Orlando Convention Center, June
7 and 8&lt;/font&gt;&lt;/strong&gt;
&lt;/div&gt;
&lt;div&gt;
&lt;br&gt;
&lt;font size=3&gt;So what is it?&amp;nbsp; Basically, the Florida User Group Communities were
asked what would they do with the Orlando Convention Center for a weekend?&amp;nbsp; What
they came up with was a &lt;b&gt;FREE weekend&lt;/b&gt; with loads of great content.&amp;nbsp; Get
all the latest information and registration at &gt;&lt;/font&gt;&lt;a href="http://www.floridatweener.com/"&gt;&lt;font size=3&gt;http://www.floridatweener.com&lt;/font&gt;&lt;/a&gt;&lt;font size=3&gt;. &lt;/font&gt;
&lt;/div&gt;
&lt;div&gt;&lt;font size=3&gt;&lt;/font&gt;&amp;nbsp;
&lt;/div&gt;
&lt;div&gt;I hope to be there.&amp;nbsp; I am attending Tech Ed on the first week.&amp;nbsp; It
looks like it is going to be an amazing event.&amp;nbsp; Joe Heally put the call out to
the community and this is what happened.&amp;nbsp; Take a look at the agenda and you'll
be amazed.&amp;nbsp; Hope to see you there.
&lt;/div&gt;
&lt;!--       FOOTER      --&gt;&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=28dc75a1-0a92-4383-8129-89be2f22555c" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,28dc75a1-0a92-4383-8129-89be2f22555c.aspx</comments>
      <category>Development;General;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=0bcc4254-af70-455b-bd96-aad9309ed4cd</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,0bcc4254-af70-455b-bd96-aad9309ed4cd.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,0bcc4254-af70-455b-bd96-aad9309ed4cd.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=0bcc4254-af70-455b-bd96-aad9309ed4cd</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
If you came to the Visual Studio 2008 Install fest, then come to the Intro class. 
Joe will be giving the guided tour.  If you already know the product, wait until
the end of the presentation and hit Joe with the hard questions... he can take it.
</p>
        <p>
          <strong>Introduction to Visual Studio 2008<br /><br /></strong>Presenter: Joe Healy, Microsoft Developer Evanglist<br /><br />
Microsoft® Visual Studio® 2008 delivers on Microsoft’s vision of smart client applications
by enabling developers to rapidly create connected applications that deliver the highest
quality, rich user experiences. With Visual Studio 2008, organizations will find it
easier than ever before to capture and analyze information to help them make effective
business decisions. Visual Studio 2008 enables organizations of every size to rapidly
create more secure, manageable, and reliable applications that take advantage of Windows
Vista™ and the 2007 Office system.
</p>
        <p dir="ltr" style="MARGIN-RIGHT: 0px">
          <strong>Where: 
<br /></strong>Charlie and Jakes Brewery Grill<br />
6300 N Wickham Rd<br />
Melbourne, FL 32940<br />
USA<br /><a href="https://www.clicktoattend.com/directions.aspx?code=122453">driving directions</a></p>
        <p>
          <strong>When:<br /></strong>1/22/2008<br />
6:30 PM - 8:30 PM<br />
Welcome Time:<br />
1/22/2008 6:15 PM Eastern Time
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=0bcc4254-af70-455b-bd96-aad9309ed4cd" />
      </body>
      <title>Space Coast .Net User Group January Meeting</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,0bcc4254-af70-455b-bd96-aad9309ed4cd.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,0bcc4254-af70-455b-bd96-aad9309ed4cd.aspx</link>
      <pubDate>Tue, 22 Jan 2008 03:15:56 GMT</pubDate>
      <description>&lt;p&gt;
If you came to the Visual Studio 2008 Install fest, then come to the Intro class.&amp;nbsp;
Joe will be giving the guided tour.&amp;nbsp; If you already know the product, wait until
the end of the presentation and hit Joe with the hard questions... he can take it.
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;Introduction to Visual Studio 2008&lt;br&gt;
&lt;br&gt;
&lt;/strong&gt;Presenter: Joe Healy, Microsoft Developer Evanglist&lt;br&gt;
&lt;br&gt;
Microsoft® Visual Studio® 2008 delivers on Microsoft’s vision of smart client applications
by enabling developers to rapidly create connected applications that deliver the highest
quality, rich user experiences. With Visual Studio 2008, organizations will find it
easier than ever before to capture and analyze information to help them make effective
business decisions. Visual Studio 2008 enables organizations of every size to rapidly
create more secure, manageable, and reliable applications that take advantage of Windows
Vista™ and the 2007 Office system.
&lt;/p&gt;
&lt;p dir=ltr style="MARGIN-RIGHT: 0px"&gt;
&lt;strong&gt;Where: 
&lt;br&gt;
&lt;/strong&gt;Charlie and Jakes Brewery Grill&lt;br&gt;
6300 N Wickham Rd&lt;br&gt;
Melbourne, FL 32940&lt;br&gt;
USA&lt;br&gt;
&lt;a href="https://www.clicktoattend.com/directions.aspx?code=122453"&gt;driving directions&lt;/a&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;When:&lt;br&gt;
&lt;/strong&gt;1/22/2008&lt;br&gt;
6:30 PM - 8:30 PM&lt;br&gt;
Welcome Time:&lt;br&gt;
1/22/2008 6:15 PM Eastern Time
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=0bcc4254-af70-455b-bd96-aad9309ed4cd" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,0bcc4254-af70-455b-bd96-aad9309ed4cd.aspx</comments>
      <category>Development;Learning;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=6999c59d-ae99-4ef5-9997-7d826fc1365c</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,6999c59d-ae99-4ef5-9997-7d826fc1365c.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,6999c59d-ae99-4ef5-9997-7d826fc1365c.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=6999c59d-ae99-4ef5-9997-7d826fc1365c</wfw:commentRss>
      <title>Microsoft vs. [Insert Other Vendor Here] - An Intangible to Consider</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,6999c59d-ae99-4ef5-9997-7d826fc1365c.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,6999c59d-ae99-4ef5-9997-7d826fc1365c.aspx</link>
      <pubDate>Tue, 22 Jan 2008 02:57:39 GMT</pubDate>
      <description>&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;&lt;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /&gt;I
am in the middle of a medium size BI project where we chose Microsoft for ETL with
the SSIS component of SQL Server 2005.&amp;nbsp; For various factors, we decided on Cognos
8 for the Cube and Presentation layers.&amp;nbsp; As part of the analysis we took in to
account things like cost, Gartner, In-House skill sets and so on.&amp;nbsp; It was a pretty
even race for Cognos &amp;amp; MS Performance Point Server (PPS) and we ended up going
with Cognos.&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;Some background
information on our Cognos implementation.&amp;nbsp; It came in-house with a product called
Agile.&amp;nbsp; So since we were licensed, we went with it for basic reporting needs.&amp;nbsp;
Now we're at the point we're we are really looking at BI - time analysis of data,
ad hoc analysis, KPIs, and so on.&amp;nbsp; We made an assumption that we could leverage
our existing Cognos skill sets into the world of Cognos 8 BI.&amp;nbsp; It wasn't a great
bet.&amp;nbsp; We sent some people to training and they took away what most take away
from a week long course based on a vendor curriculum (This is not just a Cognos issue,
we have a real challenge finding solid training for the Microsoft stuff too).&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;Now, I was in
the same position our Cognos talent was in when I went to work on BizTalk.&amp;nbsp; I
had a strong background in the fundamentals of .Net languages and Web development.&amp;nbsp;
I went off to take the one week training course (much love to Mark Berry at &lt;a href="http://www.dunntraining.com"&gt;&lt;font color=#800080&gt;Dunn
Training&lt;/font&gt;&lt;/a&gt;) and came away with a strong set of basic tools.&amp;nbsp; When I
went up against the kind of problems we're hitting in Cognos right now, there was
a difference.&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;Searching for
help on Cognos technical issues is really difficult.&amp;nbsp; There is very little out
there in the way of web based community.&amp;nbsp; And a lot of what you do find refers
to Cognos' KB which is protected by password.&amp;nbsp; I am not sure what the hurdle
is to getting the password setup... a call to our account representative and some
paperwork.&amp;nbsp; When you're slugging out a technical issue this is not the best customer
experience to have.&amp;nbsp; 
&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;On the other hand,
Microsoft's community is unbelievably rich and returns many hits when searching for
answers.&amp;nbsp; BizTalk is a pricy tool and is seldom afforded by those outside of
serious enterprise grade businesses – which makes is developer base quite small compared
to C#, SQL, ASP.Net, etc.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;Never the less,
there is a rich and vibrant community of users who post and share tremendous amounts
of technical insight and know how.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I
have become truly active in my local developer community in the pas couple of years
and I see now why Microsoft pours so much effort into these folks.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;As
a direct result, I typically can solve most of my technical glitches or unknowns with
a minimal amount of time on Google or Live Search.&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;I am not saying
Microsoft is perfect.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I have my issues
when I call in for Technical Support and deal with some of the first line folks.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I
here the same frustrations form my Cognos counterparts.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;The
nice thing is that there is such a wealth of Microsoft product knowledge living both
outside and inside Microsoft, that it’s one of those intangibles that is rarely given
due weight in a product study.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;It certainly
keeps the number of calls I’ve made to Microsoft to a minimum.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;As
for which is the best product… another time and another blog post.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;
&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;b style="mso-bidi-font-weight: normal"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;Comment:&lt;/span&gt;&lt;/b&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #003300; FONT-FAMILY: Verdana"&gt;&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;If
anyone ever wants to experience the Microsoft community in full force – go to a local
Code Camp.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;I’ve never gotten so many
professional contacts in one place.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;And
if there aren’t any near you, call you Microsoft Developer Evangelist and ask nicely
for some help.&lt;span style="mso-spacerun: yes"&gt;&amp;nbsp; &lt;/span&gt;You’d really be amazed.&lt;o:p&gt;&lt;/o:p&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p class=MsoNormal style="MARGIN: 0in 0in 0pt"&gt;
&lt;o:p&gt;
&lt;font face="Times New Roman" color=#000000 size=3&gt;&amp;nbsp;&lt;/font&gt;
&lt;/o:p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=6999c59d-ae99-4ef5-9997-7d826fc1365c" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,6999c59d-ae99-4ef5-9997-7d826fc1365c.aspx</comments>
      <category>BizTalk;Development;General;Learning;User Group;Windows</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=5cb9df81-a758-4a6e-823b-688b01494385</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,5cb9df81-a758-4a6e-823b-688b01494385.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,5cb9df81-a758-4a6e-823b-688b01494385.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=5cb9df81-a758-4a6e-823b-688b01494385</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
If you plan to attend, Joe Healy has provided us with the fruit of his labors (and
bruises).  Here is a list of things to do with your pc or laptop before coming
to the install fest: <a href="http://www.devfish.net/FullBlogItemView.aspx?BlogId=469">http://www.devfish.net/FullBlogItemView.aspx?BlogId=469</a></p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=5cb9df81-a758-4a6e-823b-688b01494385" />
      </body>
      <title>VS 2008 Install Fest Pre-Install Check List</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,5cb9df81-a758-4a6e-823b-688b01494385.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,5cb9df81-a758-4a6e-823b-688b01494385.aspx</link>
      <pubDate>Thu, 29 Nov 2007 21:31:03 GMT</pubDate>
      <description>&lt;p&gt;
If you plan to attend, Joe Healy has provided us with the fruit of his labors (and
bruises).&amp;nbsp; Here is a list of things to do with your pc or laptop before coming
to the install fest: &lt;a href="http://www.devfish.net/FullBlogItemView.aspx?BlogId=469"&gt;http://www.devfish.net/FullBlogItemView.aspx?BlogId=469&lt;/a&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=5cb9df81-a758-4a6e-823b-688b01494385" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,5cb9df81-a758-4a6e-823b-688b01494385.aspx</comments>
      <category>Development;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=dac63250-2a2d-4528-b8da-71268b5d193f</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,dac63250-2a2d-4528-b8da-71268b5d193f.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,dac63250-2a2d-4528-b8da-71268b5d193f.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=dac63250-2a2d-4528-b8da-71268b5d193f</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://scdnug.org/blogs/events/archive/2007/11/16/Visual-Studio-2008-Install-fest.aspx">http://scdnug.org/blogs/events/archive/2007/11/16/Visual-Studio-2008-Install-fest.aspx</a>. 
Let me reitierate what free means here. First fo all it is free like beer (not
free like a puppy).  But... there is no glass for the beer.  You must drink
it right there and then from the tap.  That is, you are not given install
media or such at this event.  You are only temporarily given a CD to install
with and that is it.  You are licensed for the instance of this installation
only.  Hope to see everyone there!  Even if you don't need VS 2008, come
by and have a beer and say Hello to everyone.  Microsoft has been known to buy
a beer or two...  no promises.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=dac63250-2a2d-4528-b8da-71268b5d193f" />
      </body>
      <title>VS 2008 Install Fest Info Finalized</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,dac63250-2a2d-4528-b8da-71268b5d193f.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,dac63250-2a2d-4528-b8da-71268b5d193f.aspx</link>
      <pubDate>Sun, 18 Nov 2007 02:38:28 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a href="http://scdnug.org/blogs/events/archive/2007/11/16/Visual-Studio-2008-Install-fest.aspx"&gt;http://scdnug.org/blogs/events/archive/2007/11/16/Visual-Studio-2008-Install-fest.aspx&lt;/a&gt;.&amp;nbsp;
Let me reitierate what free means here.&amp;nbsp;First fo all it is free like beer (not
free like a puppy).&amp;nbsp; But... there is no glass for the beer.&amp;nbsp; You must drink
it right there and then from the tap.&amp;nbsp; That is, you&amp;nbsp;are not given install
media or such at this event.&amp;nbsp; You are only temporarily given a CD to install
with and that is it.&amp;nbsp; You are licensed for the instance of this installation
only.&amp;nbsp; Hope to see everyone there!&amp;nbsp; Even if you don't need VS 2008, come
by and have a beer and say Hello to everyone.&amp;nbsp; Microsoft has been known to buy
a beer or two...&amp;nbsp; no promises.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=dac63250-2a2d-4528-b8da-71268b5d193f" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,dac63250-2a2d-4528-b8da-71268b5d193f.aspx</comments>
      <category>Development;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=a753d766-978c-4007-908f-85ee7708b41e</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,a753d766-978c-4007-908f-85ee7708b41e.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,a753d766-978c-4007-908f-85ee7708b41e.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=a753d766-978c-4007-908f-85ee7708b41e</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
The Space Coast .Net User Group is in the early stages of planning a load fest for
Visual Studio 2008 with Joe Healy - MS Developer Evangelist.  The tentative date
is Dec. 18th and the first 20 attenddees can bring their laptops and load the product
for free.  We're looking for a location right now and since loading software
(even free software) is so much fun (sarcasm) - it will hopefully serve alchohol. 
Stay Tuned here or to the <a href="http://www.scdnug.org">Space Coast .Net User Group</a> web
site.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=a753d766-978c-4007-908f-85ee7708b41e" />
      </body>
      <title>Free (like beer) Copies of Visual Studio 2008!</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,a753d766-978c-4007-908f-85ee7708b41e.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,a753d766-978c-4007-908f-85ee7708b41e.aspx</link>
      <pubDate>Fri, 16 Nov 2007 14:18:32 GMT</pubDate>
      <description>&lt;p&gt;
The Space Coast .Net User Group is in the early stages of planning a load fest for
Visual Studio 2008 with Joe Healy - MS Developer Evangelist.&amp;nbsp; The tentative date
is Dec. 18th and the first 20 attenddees can bring their laptops and load the product
for free.&amp;nbsp; We're looking for a location right now and since loading software
(even free software) is so much fun (sarcasm) - it will hopefully serve alchohol.&amp;nbsp;
Stay Tuned here or to the &lt;a href="http://www.scdnug.org"&gt;Space Coast .Net User Group&lt;/a&gt; web
site.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=a753d766-978c-4007-908f-85ee7708b41e" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,a753d766-978c-4007-908f-85ee7708b41e.aspx</comments>
      <category>Development;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=2be78cb6-7ba0-433a-a6b7-11358eb4a1a0</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,2be78cb6-7ba0-433a-a6b7-11358eb4a1a0.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,2be78cb6-7ba0-433a-a6b7-11358eb4a1a0.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=2be78cb6-7ba0-433a-a6b7-11358eb4a1a0</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I will be be giving my first technical presentation at the Space Coast .Net User Group
on this Wednesday night.  If you are coming, don't forget to <a href="https://www.clicktoattend.com/invitation.aspx?code=119084">clicktoattend</a>. 
Follow the link for directions too.  I hope to see everyone there and you will
be frisked for rotten vegetables at the door.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=2be78cb6-7ba0-433a-a6b7-11358eb4a1a0" />
      </body>
      <title>I Will Be Presenting the Enterprise Library Validation Application Block at SCDNUG</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,2be78cb6-7ba0-433a-a6b7-11358eb4a1a0.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,2be78cb6-7ba0-433a-a6b7-11358eb4a1a0.aspx</link>
      <pubDate>Mon, 13 Aug 2007 03:35:59 GMT</pubDate>
      <description>&lt;p&gt;
I will be be giving my first technical presentation at the Space Coast .Net User Group
on this Wednesday night.&amp;nbsp; If you are coming, don't forget to &lt;a href="https://www.clicktoattend.com/invitation.aspx?code=119084"&gt;clicktoattend&lt;/a&gt;.&amp;nbsp;
Follow the link for directions too.&amp;nbsp; I hope to see everyone there and you will
be frisked for rotten vegetables at the door.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=2be78cb6-7ba0-433a-a6b7-11358eb4a1a0" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,2be78cb6-7ba0-433a-a6b7-11358eb4a1a0.aspx</comments>
      <category>Development;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=ee85ea9f-d831-46ff-8e21-0ebc29e69e2a</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,ee85ea9f-d831-46ff-8e21-0ebc29e69e2a.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,ee85ea9f-d831-46ff-8e21-0ebc29e69e2a.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=ee85ea9f-d831-46ff-8e21-0ebc29e69e2a</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I was implementing some data access code for a personal project using the Enterprise
Library's Data Access Application Block (DAAB).  I was running some code that
checked for the existence of a row prior to issuing an insert.  Here is the original
code:
</p>
        <blockquote dir="ltr" style="MARGIN-RIGHT: 0px">
          <p>
            <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">SqlDatabase
db <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> DatabaseFactory.CreateDatabase(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"mainDB"</span>) <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">as</span> SqlDatabase;<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">string</span> sqlCommand <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"ar_GetArrestReportItemByCaseNumber"</span>;<br />
DbCommand dbCommand <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> db.GetStoredProcCommand(sqlCommand);<br /></span>
          </p>
          <p>
            <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">db.AddInParameter(dbCommand, <span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"reportId"</span>,
DbType.Int32, reportID);<br />
db.AddInParameter(dbCommand, <span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"caseNumber"</span>,
DbType.String, caseNumber);<br /><br />
IDataReader dataReader <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> db.ExecuteReader(dbCommand);<br /><br />
exists <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> dataReader.Read();<br /></span>
          </p>
        </blockquote>
        <p>
After running through on some test data, I gave it a run against some real world data. 
And it worked fine until the data's batches exceeded 100 rows.  Then I got the
error message:
</p>
        <blockquote dir="ltr" style="MARGIN-RIGHT: 0px">
          <p>
            <font face="Courier New" color="#ff0000">Timeout expired. The timeout period elapsed
prior to obtaining a connection from the pool. This may have occurred because all
pooled connections were in use and max pool size was reached.</font>
          </p>
        </blockquote>
        <p>
I checked SQL Manager and saw 100 connections / processes accessing the table in question. 
I am using the DAAB.  The Database class is supposed to take care of this sort
of thing for me.  There was a <a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;830118">bug</a> in
VS 2003, but this was fixed in VS 2005.  Where is the connection being left open...
the DataReader.  I forgot to close the DataReader.  I promptly re-educated
myself on some ADO and IDisposable.  Whenever an object implements IDisposable,
there is probably a good reason for it... like say... releasing a connection object
back to the connection pool.  Corrected code and much better performance:
</p>
        <blockquote dir="ltr" style="MARGIN-RIGHT: 0px">
          <p>
            <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">SqlDatabase
db <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> DatabaseFactory.CreateDatabase(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"mainDB"</span>) <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">as</span> SqlDatabase;<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">string</span> sqlCommand <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"ar_GetArrestReportItemByCaseNumber"</span>;<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">using</span> (DbCommand
dbCommand <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> db.GetStoredProcCommand(sqlCommand))<br />
{<br />
   db.AddInParameter(dbCommand, <span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"reportId"</span>,
DbType.Int32, reportID);<br />
   db.AddInParameter(dbCommand, <span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"caseNumber"</span>,
DbType.String, caseNumber);<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   using</span> (IDataReader
dataReader <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> db.ExecuteReader(dbCommand))<br />
   {<br />
      exists <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> dataReader.Read();<br />
   }<br />
}</span>
          </p>
        </blockquote>
        <p>
Moral of the story... if IDisposable is implemented, chances are you should call it.
</p>
        <p>
ADDENDUM<br />
----------<br />
For those who are not familiar, IDisposable is an interface for the implementation
of the Dispose Pattern.  This is very useful in programming languages that have
Garbage Collection (ie. .Net).  When you have Garbage Collection, you have what
is called a non-deterministic destructor.  In other words, when you are done
using an object, you have no idea when it's resources will be freed.  Garbage
Collection occurs at an interval that is determined by the system.  By implementing
IDisposable, you ad a Dispose method to your class where high contention resources
can be freed (ie. File Handles, Database Connections, etc.).  The implementing
of IDisposable signals the user that there is something valuable to be cleaned up
ASAP that cannot wait for Garbage Collection.  So, even if Dispose is called,
the Garbage Collector will still clean up the object's resources eventually. 
But in the mean time, all of the high value resources have been released.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=ee85ea9f-d831-46ff-8e21-0ebc29e69e2a" />
      </body>
      <title>Using Using with ADO &amp; the Data Access Application Block - I forgot.</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,ee85ea9f-d831-46ff-8e21-0ebc29e69e2a.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,ee85ea9f-d831-46ff-8e21-0ebc29e69e2a.aspx</link>
      <pubDate>Mon, 09 Apr 2007 19:49:49 GMT</pubDate>
      <description>&lt;p&gt;
I was implementing some data access code for a personal project using the Enterprise
Library's Data Access Application Block (DAAB).&amp;nbsp; I was running some code that
checked for the existence of a row prior to issuing an insert.&amp;nbsp; Here is the original
code:
&lt;/p&gt;
&lt;blockquote dir=ltr style="MARGIN-RIGHT: 0px"&gt; 
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;SqlDatabase
db &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; DatabaseFactory.CreateDatabase(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"mainDB"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;as&lt;/span&gt; SqlDatabase;&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;string&lt;/span&gt; sqlCommand &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"ar_GetArrestReportItemByCaseNumber"&lt;/span&gt;;&lt;br&gt;
DbCommand dbCommand &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; db.GetStoredProcCommand(sqlCommand);&lt;br&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;db.AddInParameter(dbCommand, &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"reportId"&lt;/span&gt;,
DbType.Int32, reportID);&lt;br&gt;
db.AddInParameter(dbCommand, &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"caseNumber"&lt;/span&gt;,
DbType.String, caseNumber);&lt;br&gt;
&lt;br&gt;
IDataReader dataReader &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; db.ExecuteReader(dbCommand);&lt;br&gt;
&lt;br&gt;
exists &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; dataReader.Read();&lt;br&gt;
&lt;/span&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
After running through on some test data, I gave it a run against some real world data.&amp;nbsp;
And it worked fine until the data's batches exceeded 100 rows.&amp;nbsp; Then I got the
error message:
&lt;/p&gt;
&lt;blockquote dir=ltr style="MARGIN-RIGHT: 0px"&gt; 
&lt;p&gt;
&lt;font face="Courier New" color=#ff0000&gt;Timeout expired. The timeout period elapsed
prior to obtaining a connection from the pool. This may have occurred because all
pooled connections were in use and max pool size was reached.&lt;/font&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
I checked SQL Manager and saw 100 connections / processes accessing the table in question.&amp;nbsp;
I am using the DAAB.&amp;nbsp; The Database class is supposed to take care of this sort
of thing for me.&amp;nbsp; There was a &lt;a href="http://support.microsoft.com/default.aspx?scid=kb;en-us;830118"&gt;bug&lt;/a&gt; in
VS 2003, but this was fixed in VS 2005.&amp;nbsp; Where is the connection being left open...
the DataReader.&amp;nbsp; I forgot to close the DataReader.&amp;nbsp; I promptly re-educated
myself on some ADO and IDisposable.&amp;nbsp; Whenever an object implements IDisposable,
there is probably a good reason for it... like say... releasing a connection object
back to the connection pool.&amp;nbsp; Corrected code and much better performance:
&lt;/p&gt;
&lt;blockquote dir=ltr style="MARGIN-RIGHT: 0px"&gt; 
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;SqlDatabase
db &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; DatabaseFactory.CreateDatabase(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"mainDB"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;as&lt;/span&gt; SqlDatabase;&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;string&lt;/span&gt; sqlCommand &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"ar_GetArrestReportItemByCaseNumber"&lt;/span&gt;;&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;using&lt;/span&gt; (DbCommand
dbCommand &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; db.GetStoredProcCommand(sqlCommand))&lt;br&gt;
{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;db.AddInParameter(dbCommand, &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"reportId"&lt;/span&gt;,
DbType.Int32, reportID);&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;db.AddInParameter(dbCommand, &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"caseNumber"&lt;/span&gt;,
DbType.String, caseNumber);&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;using&lt;/span&gt; (IDataReader
dataReader &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; db.ExecuteReader(dbCommand))&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;exists &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; dataReader.Read();&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br&gt;
}&lt;/span&gt;
&lt;/p&gt;
&lt;/blockquote&gt; 
&lt;p&gt;
Moral of the story... if IDisposable is implemented, chances are you should call it.
&lt;/p&gt;
&lt;p&gt;
ADDENDUM&lt;br&gt;
----------&lt;br&gt;
For those who are not familiar, IDisposable is an interface for the implementation
of the Dispose Pattern.&amp;nbsp; This is very useful in programming languages that have
Garbage Collection (ie. .Net).&amp;nbsp; When you have Garbage Collection, you have what
is called a non-deterministic destructor.&amp;nbsp; In other words, when you are done
using an object, you have no idea when it's resources will be freed.&amp;nbsp; Garbage
Collection occurs at an interval that is determined by the system.&amp;nbsp; By implementing
IDisposable, you ad a Dispose method to your class where high contention resources
can be freed (ie. File Handles, Database Connections, etc.).&amp;nbsp; The implementing
of IDisposable signals the user that there is something valuable to be cleaned up
ASAP that cannot wait for Garbage Collection.&amp;nbsp; So, even if Dispose is called,
the Garbage Collector will still clean up the object's resources eventually.&amp;nbsp;
But in the mean time, all of the high value resources have been released.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=ee85ea9f-d831-46ff-8e21-0ebc29e69e2a" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,ee85ea9f-d831-46ff-8e21-0ebc29e69e2a.aspx</comments>
      <category>Development</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=cc1eaad0-1574-4931-8292-0802473c9ce1</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,cc1eaad0-1574-4931-8292-0802473c9ce1.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,cc1eaad0-1574-4931-8292-0802473c9ce1.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=cc1eaad0-1574-4931-8292-0802473c9ce1</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
It was wort the early morning drive to Seminole Community College from Melbourne. 
The directions provided on the flyer made it slightly challenging to find but all
went well.  The key note from Carl Franklin was a humorous retrospective on his
career and the progression of Microsoft Technologies from earlier days.  However
due to technical difficulties with his guitar, we were not treated to a live performance
(nor was there a live performance from old man Paul later that evening either).
</p>
        <p>
          <img src="http://www.implementsivillage.net/other/ccorlandokeynote.jpg" />
        </p>
        <p>
I attended several good talks.  My favorites:
</p>
        <ul>
          <li>
            <a href="http://thedamndata.blogspot.com/">Wes Dumey</a> - Great primer on EDW
and SSIS.  Looking forward to spending some time with SSIS, this was a good start. 
</li>
          <li>
            <a href="http://www.campbellassociates.ca">Richard Campbell</a> - SQL Tips presentation. 
I understand this is one of his regular presentations and I understand why. 
Lot's of practical advice and an intro to some of SQL 2005's new features.  Very
Technical and very humorous... this is one session that went by in a flash and left
me wanting another hour.  
</li>
          <li>
            <a href="http://geekswithblogs.net/mcastro/">Miguel Castro</a> - Great Great presentation
on extensibility patterns.  Lots of practical information with backing code samples. 
I have never seen Miguel in person and was not disappointed.  Top notch speaker.</li>
        </ul>
        <p>
Overall, it was a great way to spend a Saturday.  Got to catchup with some developer
friends I have not seen in a while.  I also got to make some new friends in the
'There's no more pizza, just wait for the next delivery' forced networking session
with my starving co-attendees.  Lot's of thanks to ONetUg for a job well done!
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=cc1eaad0-1574-4931-8292-0802473c9ce1" />
      </body>
      <title>Orlando Code Camp Review</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,cc1eaad0-1574-4931-8292-0802473c9ce1.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,cc1eaad0-1574-4931-8292-0802473c9ce1.aspx</link>
      <pubDate>Mon, 26 Mar 2007 13:17:43 GMT</pubDate>
      <description>&lt;p&gt;
It was wort the early morning drive to Seminole Community College from Melbourne.&amp;nbsp;
The directions provided on the flyer made it slightly challenging to find but all
went well.&amp;nbsp; The key note from Carl Franklin was a humorous retrospective on his
career and the progression of Microsoft Technologies from earlier days.&amp;nbsp; However
due to technical difficulties with his guitar, we were not treated to a live performance
(nor was there a live performance from old man Paul later that evening either).
&lt;/p&gt;
&lt;p&gt;
&lt;img src="http://www.implementsivillage.net/other/ccorlandokeynote.jpg"&gt;
&lt;/p&gt;
&lt;p&gt;
I attended several good talks.&amp;nbsp; My favorites:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://thedamndata.blogspot.com/"&gt;Wes&amp;nbsp;Dumey&lt;/a&gt; - Great primer on EDW
and SSIS.&amp;nbsp; Looking forward to spending some time with SSIS, this was a good start. 
&lt;li&gt;
&lt;a href="http://www.campbellassociates.ca"&gt;Richard Campbell&lt;/a&gt; - SQL Tips presentation.&amp;nbsp;
I understand this is one of his regular presentations and I understand why.&amp;nbsp;
Lot's of practical advice and an intro to some of SQL 2005's new features.&amp;nbsp; Very
Technical and very humorous... this is one session that went by in a flash and left
me wanting another hour.&amp;nbsp; 
&lt;li&gt;
&lt;a href="http://geekswithblogs.net/mcastro/"&gt;Miguel Castro&lt;/a&gt; - Great Great presentation
on extensibility patterns.&amp;nbsp; Lots of practical information with backing code samples.&amp;nbsp;
I have never seen Miguel in person and was not disappointed.&amp;nbsp; Top notch speaker.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
Overall, it was a great way to spend a Saturday.&amp;nbsp; Got to catchup with some developer
friends I have not seen in a while.&amp;nbsp; I also got to make some new friends in the
'There's no more pizza, just wait for the next delivery' forced networking session
with my starving co-attendees.&amp;nbsp; Lot's of thanks to ONetUg for a job well done!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=cc1eaad0-1574-4931-8292-0802473c9ce1" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,cc1eaad0-1574-4931-8292-0802473c9ce1.aspx</comments>
      <category>Development;Learning;User Group</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=feb072b0-669d-4e7e-80fa-53a15fcc4b72</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,feb072b0-669d-4e7e-80fa-53a15fcc4b72.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,feb072b0-669d-4e7e-80fa-53a15fcc4b72.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=feb072b0-669d-4e7e-80fa-53a15fcc4b72</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
When workin with the Accordion control in my previous post, I encountered a bug that
made life a bit frustrating.  Everytime I broke into the debugger on the ItemDataBound
event handler and expanded the event - Crash!  Whenever the display got
to e.Item, things stopeed and got funky.  Stop debug and restart.  Create
a watch for e.AccordionItem... don't expand the evil e.  I finally took some
time and dove into the Accirdion's source code.
</p>
        <p>
I kept looking at this over and over again and could not figure out what was going
on and then it clicked - Stack Overflow!  There is a recursive call in the AccordionItemEventArgs
class:
</p>
        <p>
        <span class="cmt">/// &lt;summary&gt;<br />
        /// Container<br />
        /// &lt;/summary&gt;</span><br />
        <span class="kwd">private</span> IDataItemContainer
DataItem<br />
        {<br />
            <span class="kwd">get</span> { <span class="kwd">return</span> Item <span class="kwd">as</span> IDataItemContainer;
}<br />
        }<br /><br />
        <span class="cmt">/// &lt;summary&gt;<br />
        /// DataItem being bound to the Container<br />
        /// &lt;/summary&gt;</span><br />
        <span class="kwd">public object</span> Item<br />
        {<br />
            <span class="kwd">get</span> { <span class="kwd">return</span> DataItem.DataItem;
}<br />
        } 
</p>
        <p>
When the debugger evaluates Item to display it for you, it calls the DataItem property
which in turn calls the Item property and so on...
</p>
        <p>
Going to submit this to the Ajax bug list.  I am modifying my copies definition
of the Item property as follows:
</p>
        <pre class="coloredcode">
          <span class="cmt">/// &lt;summary&gt; /// DataItem
being bound to the Container /// &lt;/summary&gt;</span>
          <span class="kwd">public</span> Object
Item { <span class="kwd">get</span> { <span class="kwd">return</span> _item.DataItem;
} }  </pre>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=feb072b0-669d-4e7e-80fa-53a15fcc4b72" />
      </body>
      <title>Ajax Control Toolkit 61121Prod Bug in Accordion</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,feb072b0-669d-4e7e-80fa-53a15fcc4b72.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,feb072b0-669d-4e7e-80fa-53a15fcc4b72.aspx</link>
      <pubDate>Tue, 05 Dec 2006 21:59:24 GMT</pubDate>
      <description>&lt;p&gt;
When workin with the Accordion control in my previous post, I encountered a bug that
made life a bit frustrating.&amp;nbsp; Everytime I broke into the debugger on the ItemDataBound
event handler and expanded the event&amp;nbsp;- Crash!&amp;nbsp; Whenever the display got
to e.Item, things stopeed and got funky.&amp;nbsp; Stop debug and restart.&amp;nbsp; Create
a watch for e.AccordionItem... don't expand the evil e.&amp;nbsp; I finally took some
time and dove into the Accirdion's source code.
&lt;/p&gt;
&lt;p&gt;
I kept looking at this over and over again and could not figure out what was going
on and then it clicked - Stack Overflow!&amp;nbsp; There is a recursive call in the AccordionItemEventArgs
class:
&lt;/p&gt;
&lt;p&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// Container&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;private&lt;/span&gt; IDataItemContainer
DataItem&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;get&lt;/span&gt; { &lt;span class=kwd&gt;return&lt;/span&gt; Item &lt;span class=kwd&gt;as&lt;/span&gt; IDataItemContainer;
}&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// DataItem being bound to the Container&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;public object&lt;/span&gt; Item&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span class=kwd&gt;get&lt;/span&gt; { &lt;span class=kwd&gt;return&lt;/span&gt; DataItem.DataItem;
}&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; } 
&lt;p&gt;
When the debugger evaluates Item to display it for you, it calls the DataItem property
which in turn calls the Item property and so on...
&lt;/p&gt;
&lt;p&gt;
Going to submit this to the Ajax bug list.&amp;nbsp; I am modifying my copies definition
of the Item property as follows:
&lt;/p&gt;
&lt;pre class=coloredcode&gt;        &lt;span class=cmt&gt;/// &amp;lt;summary&amp;gt; /// DataItem being
bound to the Container /// &amp;lt;/summary&amp;gt;&lt;/span&gt; &lt;span class=kwd&gt;public&lt;/span&gt; Object
Item { &lt;span class=kwd&gt;get&lt;/span&gt; { &lt;span class=kwd&gt;return&lt;/span&gt; _item.DataItem;
} }&amp;nbsp;&amp;nbsp;&lt;/pre&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=feb072b0-669d-4e7e-80fa-53a15fcc4b72" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,feb072b0-669d-4e7e-80fa-53a15fcc4b72.aspx</comments>
      <category>Ajax;ASP;Development</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=61ab3cf2-d52c-4a01-ac53-78f3c64844da</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,61ab3cf2-d52c-4a01-ac53-78f3c64844da.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,61ab3cf2-d52c-4a01-ac53-78f3c64844da.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=61ab3cf2-d52c-4a01-ac53-78f3c64844da</wfw:commentRss>
      <slash:comments>19</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
I was recently using the Ajax Accordion control on a project which required me to
do some databinding with it.  I was accessing more than one object to fill out
the Accordion panels so I wanted to set alot of the controls during the ItemDataBound
event of the control.  I quickly became frustrated as I could not find the controls
in the AjaxContentPanel being made available to me in the AccordionItemEventArgs. 
Here is what I was working with:
</p>
        <font size="2">
          <p>
          </p>
        </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">form</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">id</font>
        <font color="#0000ff" size="2">="form1"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">runat</font>
        <font color="#0000ff" size="2">="server"&gt;<br />
   </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">asp</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">ScriptManager</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">ID</font>
        <font color="#0000ff" size="2">="ScriptManager1"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">runat</font>
        <font color="#0000ff" size="2">="server"</font>
        <font size="2">
        </font>
        <font color="#0000ff" size="2">/&gt;<br /></font>
        <font color="#0000ff" size="2">      &lt;</font>
        <font color="#800000" size="2">div</font>
        <font color="#0000ff" size="2">&gt;<br />
         </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">cc1</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Accordion</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">ID</font>
        <font color="#0000ff" size="2">="Accordion1"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">runat</font>
        <font color="#0000ff" size="2">="server"&gt;<br />
            </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">Panes</font>
        <font color="#0000ff" size="2">&gt;&lt;/</font>
        <font color="#800000" size="2">Panes</font>
        <font color="#0000ff" size="2">&gt;<br />
            </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">HeaderTemplate</font>
        <font color="#0000ff" size="2">&gt;<br />
               </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">div</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">style</font>
        <font color="#0000ff" size="2">="background-color:blue;cursor:pointer;"&gt;</font>
        <font size="2"> <br />
                  Header: </font>
        <font color="#008000" size="2">&lt;!--%#
Eval("Key") %--&gt;</font>
        <font size="2"> / <br />
                  </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">asp</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Label</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">ID</font>
        <font color="#0000ff" size="2">="lblHeader"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">runat</font>
        <font color="#0000ff" size="2">="server"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">Text</font>
        <font color="#0000ff" size="2">="Label"&gt;&lt;/</font>
        <font color="#800000" size="2">asp</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Label</font>
        <font color="#0000ff" size="2">&gt;<br />
               </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">div</font>
        <font color="#0000ff" size="2">&gt;<br />
            </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">HeaderTemplate</font>
        <font color="#0000ff" size="2">&gt;<br />
         </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">ContentTemplate</font>
        <font color="#0000ff" size="2">&gt;<br />
            </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">div</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">style</font>
        <font color="#0000ff" size="2">="background-color:Silver;padding:5px;border:thin
white inset;"&gt;<br />
               </font>
        <font size="2">Data: </font>
        <font color="#008000" size="2">&lt;!--%#
Eval("Value") %--&gt;</font>
        <font size="2"> <br />
               </font>
        <font color="#0000ff" size="2">&lt;</font>
        <font color="#800000" size="2">asp</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Label</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">ID</font>
        <font color="#0000ff" size="2">="lblData"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">runat</font>
        <font color="#0000ff" size="2">="server"</font>
        <font size="2">
        </font>
        <font color="#ff0000" size="2">Text</font>
        <font color="#0000ff" size="2">="Label"&gt;&lt;/</font>
        <font color="#800000" size="2">asp</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Label</font>
        <font color="#0000ff" size="2">&gt;<br />
            </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">div</font>
        <font color="#0000ff" size="2">&gt;<br />
         </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">ContentTemplate</font>
        <font color="#0000ff" size="2">&gt;<br />
      </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">cc1</font>
        <font color="#0000ff" size="2">:</font>
        <font color="#800000" size="2">Accordion</font>
        <font color="#0000ff" size="2">&gt;<br />
   </font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">div</font>
        <font color="#0000ff" size="2">&gt;<br /></font>
        <font color="#0000ff" size="2">&lt;/</font>
        <font color="#800000" size="2">form</font>
        <font color="#0000ff" size="2">&gt;
</font>
        <p>
I built a simple dictionary for this example to do the data binding.
</p>
        <p>
          <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Protected</span>
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span> Page_Load(<span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> sender <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Object</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> e <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> System.EventArgs) <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Handles</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Me</span>.Load<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   If</span><span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Not</span> IsPostBack <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Then</span><br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">      Dim</span> values <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> Dictionary(Of <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>) <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">New</span> Dictionary(Of <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>)()<br />
      values(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"A"</span>) <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"This
is the value for A"</span><br />
      values(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"B"</span>) <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"This
is the value for B"</span><br />
      values(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"C"</span>) <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"This
is the value for C"</span><br />
      values(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"D"</span>) <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span><span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"This
is the value for D"</span><br />
      Accordion1.DataSource <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> values<br />
      Accordion1.DataBind()<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   End</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">If</span><br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">End</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span></span>
        </p>
        <p>
This is what my first attempt to set the labels in the code.
</p>
        <p>
        </p>
        <p>
          <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Protected</span>
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span> Accordion1_ItemDataBound(<span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> sender <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Object</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> e <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> AjaxControlToolkit.AccordionItemEventArgs) <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Handles</span> Accordion1.ItemDataBound<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> myDictEntry <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> KeyValuePair(Of <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>)<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> lblHeader <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> Label<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> lblData <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> Label<br /><br />
   myDictEntry <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.DataItem<br />
   lblHeader <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.FindControl(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"lblHeader"</span>)<br />
   lblHeader.Text <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> myDictEntry.Key<br />
   lblData <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.FindControl(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"lblData"</span>)<br />
   lblData.Text <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> myDictEntry.Value<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">End</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span></span>
        </p>
        <p>
I kept getting null reference exceptions on the 'lblData.Text = myDictEntry.Value'
line.  I went into the locals to see what was going on with my
eventArgs.  I rapidly found out that you don't want to touch e.Item*.  Any
attempt to look at these caused the debugger to drop.  Not fun.  I poked
around extensively in e.AccordionItem which is an AccordionContentPanel.  So
it became apprent after digging around in the controls source that there are two types
of ContentPanels in each AccordionItem.  There is a Content and Header panel. 
And you can tell which is which by examining e.AccordionItem.ItemType.  
</p>
        <p>
This is the second attempt which now workd flawlessly.
</p>
        <p>
          <span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Protected</span>
            <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span> Accordion1_ItemDataBound(<span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> sender <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Object</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">ByVal</span> e <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> AjaxControlToolkit.AccordionItemEventArgs) <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Handles</span> Accordion1.ItemDataBound<br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> myDictEntry <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> KeyValuePair(Of <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>, <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">String</span>)<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> lblHeader <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> Label<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Dim</span> lblData <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">As</span> Label<br /><br />
   myDictEntry <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.DataItem<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   If</span> e.AccordionItem.ItemType <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> AjaxControlToolkit.AccordionItemType.Header <span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Then</span><br />
      lblHeader <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.FindControl(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"lblHeader"</span>)<br />
      lblHeader.Text <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> myDictEntry.Key<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   Else</span><br />
      lblData <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> e.AccordionItem.FindControl(<span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4">"lblData"</span>)<br />
      lblData.Text <span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">=</span> myDictEntry.Value<br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">   End</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">If</span><br /><br /><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">End</span><span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent">Sub</span></span>
        </p>
        <p>
I was suprised how this particular attribute was buried so deeply in the eventArgs. 
I would have expected to see an e.AccordionItemType hanging out to make it a little
more obvious.  Overall, I do love this control.  A nice way to present a
large amount of content on a page without it running off the bottom of the screen. 
And the panel sliding is just too cool.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=61ab3cf2-d52c-4a01-ac53-78f3c64844da" />
      </body>
      <title>Ajax Accordion Data Binding Behaviour</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,61ab3cf2-d52c-4a01-ac53-78f3c64844da.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,61ab3cf2-d52c-4a01-ac53-78f3c64844da.aspx</link>
      <pubDate>Mon, 04 Dec 2006 21:35:55 GMT</pubDate>
      <description>&lt;p&gt;
I was recently using the Ajax Accordion control on a project which required me to
do some databinding with it.&amp;nbsp; I was accessing more than one object to fill out
the Accordion panels so I wanted to set alot of the controls during the ItemDataBound
event of the control.&amp;nbsp; I quickly became frustrated as I could not find the controls
in the AjaxContentPanel being made available to me in the AccordionItemEventArgs.&amp;nbsp;
Here is what I was working with:
&lt;/p&gt;
&lt;font size=2&gt; 
&lt;p&gt;
&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;form&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;id&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="form1"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;runat&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="server"&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;asp&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;ScriptManager&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;ID&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="ScriptManager1"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;runat&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="server"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#0000ff size=2&gt;/&amp;gt;&lt;br&gt;
&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;cc1&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Accordion&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;ID&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="Accordion1"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;runat&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="server"&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;Panes&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;Panes&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;HeaderTemplate&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;style&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="background-color:blue;cursor:pointer;"&amp;gt;&lt;/font&gt;&lt;font size=2&gt;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Header: &lt;/font&gt;&lt;font color=#008000 size=2&gt;&amp;lt;!--%#
Eval("Key") %--&amp;gt;&lt;/font&gt;&lt;font size=2&gt; /&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;asp&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Label&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;ID&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="lblHeader"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;runat&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="server"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;Text&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="Label"&amp;gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;asp&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Label&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;HeaderTemplate&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;ContentTemplate&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;style&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="background-color:Silver;padding:5px;border:thin
white inset;"&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font size=2&gt;Data: &lt;/font&gt;&lt;font color=#008000 size=2&gt;&amp;lt;!--%#
Eval("Value") %--&amp;gt;&lt;/font&gt;&lt;font size=2&gt;&amp;nbsp;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;&lt;/font&gt;&lt;font color=#800000 size=2&gt;asp&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Label&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;ID&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="lblData"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;runat&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="server"&lt;/font&gt;&lt;font size=2&gt; &lt;/font&gt;&lt;font color=#ff0000 size=2&gt;Text&lt;/font&gt;&lt;font color=#0000ff size=2&gt;="Label"&amp;gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;asp&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Label&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;ContentTemplate&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;cc1&lt;/font&gt;&lt;font color=#0000ff size=2&gt;:&lt;/font&gt;&lt;font color=#800000 size=2&gt;Accordion&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;div&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&lt;br&gt;
&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;lt;/&lt;/font&gt;&lt;font color=#800000 size=2&gt;form&lt;/font&gt;&lt;font color=#0000ff size=2&gt;&amp;gt;&gt;
&lt;/font&gt; 
&lt;p&gt;
I built a simple dictionary for this example to do&amp;nbsp;the data binding.
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Protected&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt; Page_Load(&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; sender &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Object&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; e &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; System.EventArgs) &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Handles&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Me&lt;/span&gt;.Load&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Not&lt;/span&gt; IsPostBack &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Then&lt;/span&gt;
&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; values &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; Dictionary(Of &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;New&lt;/span&gt; Dictionary(Of &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;)()&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"A"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"This
is the value for A"&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"B"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"This
is the value for B"&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"C"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"This
is the value for C"&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;values(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"D"&lt;/span&gt;) &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"This
is the value for D"&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Accordion1.DataSource &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; values&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Accordion1.DataBind()&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;If&lt;/span&gt;
&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;End&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
This is what my first attempt to set the labels in the code.
&lt;/p&gt;
&lt;p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Protected&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt; Accordion1_ItemDataBound(&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; sender &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Object&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; e &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; AjaxControlToolkit.AccordionItemEventArgs) &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Handles&lt;/span&gt; Accordion1.ItemDataBound&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; myDictEntry &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; KeyValuePair(Of &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;)&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; lblHeader &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; Label&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; lblData &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; Label&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;myDictEntry &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.DataItem&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;lblHeader &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.FindControl(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"lblHeader"&lt;/span&gt;)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;lblHeader.Text &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; myDictEntry.Key&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;lblData &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.FindControl(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"lblData"&lt;/span&gt;)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;lblData.Text &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; myDictEntry.Value&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;End&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
I kept getting null reference exceptions on the&amp;nbsp;'lblData.Text = myDictEntry.Value'
line.&amp;nbsp; I went into the&amp;nbsp;locals&amp;nbsp;to&amp;nbsp;see what was going on with my
eventArgs.&amp;nbsp; I rapidly found out that you don't want to touch e.Item*.&amp;nbsp; Any
attempt to look at these caused the debugger to drop.&amp;nbsp; Not fun.&amp;nbsp; I poked
around extensively in e.AccordionItem which is an AccordionContentPanel.&amp;nbsp; So
it became apprent after digging around in the controls source that there are two types
of ContentPanels in each AccordionItem.&amp;nbsp; There is a&amp;nbsp;Content and Header panel.&amp;nbsp;
And you can tell which is which by examining e.AccordionItem.ItemType.&amp;nbsp; 
&lt;p&gt;
This is the second attempt which now workd flawlessly.
&lt;/p&gt;
&lt;p&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: black; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Protected&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt; Accordion1_ItemDataBound(&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; sender &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Object&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;ByVal&lt;/span&gt; e &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; AjaxControlToolkit.AccordionItemEventArgs) &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Handles&lt;/span&gt; Accordion1.ItemDataBound&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; myDictEntry &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; KeyValuePair(Of &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;, &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;String&lt;/span&gt;)&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; lblHeader &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; Label&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Dim&lt;/span&gt; lblData &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;As&lt;/span&gt; Label&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;myDictEntry &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.DataItem&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;If&lt;/span&gt; e.AccordionItem.ItemType &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; AjaxControlToolkit.AccordionItemType.Header &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Then&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblHeader &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.FindControl(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"lblHeader"&lt;/span&gt;)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblHeader.Text &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; myDictEntry.Key&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Else&lt;/span&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblData &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; e.AccordionItem.FindControl(&lt;span style="FONT-SIZE: 11px; COLOR: #666666; FONT-FAMILY: Courier New; BACKGROUND-COLOR: #e4e4e4"&gt;"lblData"&lt;/span&gt;)&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lblData.Text &lt;span style="FONT-SIZE: 11px; COLOR: red; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;=&lt;/span&gt; myDictEntry.Value&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;End&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;If&lt;/span&gt;
&lt;br&gt;
&lt;br&gt;
&lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;End&lt;/span&gt; &lt;span style="FONT-SIZE: 11px; COLOR: blue; FONT-FAMILY: Courier New; BACKGROUND-COLOR: transparent"&gt;Sub&lt;/span&gt;&lt;/span&gt;
&lt;/p&gt;
&lt;p&gt;
I was suprised how this particular attribute was buried so deeply in the eventArgs.&amp;nbsp;
I would have expected to see an e.AccordionItemType hanging out to make it a little
more obvious.&amp;nbsp; Overall, I do love this control.&amp;nbsp; A nice way to present a
large amount of content on a page without it running off the bottom of the screen.&amp;nbsp;
And the panel sliding is just too cool.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=61ab3cf2-d52c-4a01-ac53-78f3c64844da" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,61ab3cf2-d52c-4a01-ac53-78f3c64844da.aspx</comments>
      <category>Ajax;ASP;Development</category>
    </item>
    <item>
      <trackback:ping>http://www.implementsivillage.net/Trackback.aspx?guid=43ff3043-f24c-4a98-9caf-cd5610b93a25</trackback:ping>
      <pingback:server>http://www.implementsivillage.net/pingback.aspx</pingback:server>
      <pingback:target>http://www.implementsivillage.net/PermaLink,guid,43ff3043-f24c-4a98-9caf-cd5610b93a25.aspx</pingback:target>
      <dc:creator>Christian Loris</dc:creator>
      <wfw:comment>http://www.implementsivillage.net/CommentView,guid,43ff3043-f24c-4a98-9caf-cd5610b93a25.aspx</wfw:comment>
      <wfw:commentRss>http://www.implementsivillage.net/SyndicationService.asmx/GetEntryCommentsRss?guid=43ff3043-f24c-4a98-9caf-cd5610b93a25</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
We recently had some Microsoft PFE's (Premier Field Engineers) in to Harris Corporate
to give us the crash cource in Team Foundation Server.  Apparantly Microsoft
has a whole department (Premier Field Engineering) dedicated to customer's like Harris
who back up a truck full on money to Redmond each year for licensing.  And what
a department it is.  We traded in some of our support hours for the class as
it has been a pretty good year for things not going too wrong.  The class was
taught by Hamid Safi who was being shadowed by <a href="http://www.cornetdesign.com/">Cory
Foy</a> from the Tampa office.  Both guys were incredibly knowledgeable
about TFS and almost any other Microsoft product we aksed about.  The class
size was quite small and we got the opportunity to go off on some tangents when
the in depth TFS discussion was beating our attention spans into submission.
</p>
        <p>
Cory gave the presentation on the Testing portion of TFS / Visual Studio Team Edition
where he used a great little Bowling Score class to demonstrate testing.  The
discussion then worked its way down to the Agile / TDD.  His initial class was
rudimentry and simply added scores.  Test cases were written for several of the
simpler scenarios like frames of all zeroes and frames that did not include strikes
or spares.  Youc an actually read about this in Cory's Blog entry here: <a href="http://www.cornetdesign.com/2006/11/bowling-revisted.html#links">http://www.cornetdesign.com/2006/11/bowling-revisted.html#links</a>. 
The demonstration and interactive portion of the talk began when we started covering
the spare and strike cases.  Cory went into covering the spare scenarios and
we quickly came up with a solution.  But while designing the solution, it became
clear to me that the way we were implementing it was not very 'friendly' for implementing
the upcoming strike cases.  And this is where the fun began... Cory preached
the Agile / TDD gospel here: solve the problem you are workin on and then move on. 
I was a bit resistant to his at first but also see its wisdom.  More time than
I care to admit, I get bogged down in trying to design out the entire solution for
eevery possible case before I get heavy into coding.  And I consequently do not
start coding soon enough, do not have prototypes ready on time, and generally cut
down on the time I have available to code.
</p>
        <p>
Looking at the world with Agile / TDD glasses on is kind of nice.  I don't necessarily
need to have the weight of the whole app or system on my shoulders at once. 
I concentrate on getting done what needs to be done now and adding or refactoring
in the next features that come down the pipe.  I shouldn't be afraid to write
code that I will be throwing away in a few weeks.  The important thing is not
the code but an understanding of the system that is being built and its rules. 
Well written code will be adaptable to a degree, but when there is a signicant change
to the system's requirements, we can't be afraid to throw that code away while retaining
its tests and wisdom.
</p>
        <p>
I am going to put an Agile / TDD book on the Christmas list.
</p>
        <img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=43ff3043-f24c-4a98-9caf-cd5610b93a25" />
      </body>
      <title>Why I like/dislike the idea of Test Driven Development (TDD)</title>
      <guid isPermaLink="false">http://www.implementsivillage.net/PermaLink,guid,43ff3043-f24c-4a98-9caf-cd5610b93a25.aspx</guid>
      <link>http://www.implementsivillage.net/PermaLink,guid,43ff3043-f24c-4a98-9caf-cd5610b93a25.aspx</link>
      <pubDate>Mon, 20 Nov 2006 18:01:57 GMT</pubDate>
      <description>&lt;p&gt;
We recently had some Microsoft PFE's (Premier Field Engineers) in to Harris Corporate
to give us the crash cource in Team Foundation Server.&amp;nbsp; Apparantly Microsoft
has a whole department (Premier Field Engineering) dedicated to customer's like Harris
who back up a truck full on money to Redmond each year for licensing.&amp;nbsp; And what
a department it is.&amp;nbsp; We traded in some of our support hours for the class as
it has been a pretty good year for things not going too wrong.&amp;nbsp; The class was
taught by Hamid Safi who was being shadowed by &lt;a href="http://www.cornetdesign.com/"&gt;Cory
Foy&lt;/a&gt;&amp;nbsp;from the Tampa office.&amp;nbsp; Both guys were incredibly knowledgeable
about TFS and almost any other Microsoft&amp;nbsp;product we aksed about.&amp;nbsp; The class
size was quite small and we got the opportunity to go off on some&amp;nbsp;tangents when
the in depth TFS discussion was&amp;nbsp;beating&amp;nbsp;our attention spans into submission.
&lt;/p&gt;
&lt;p&gt;
Cory gave the presentation on the Testing portion of TFS / Visual Studio Team Edition
where he used a great little Bowling Score class to demonstrate testing.&amp;nbsp; The
discussion then worked its way down to the Agile / TDD.&amp;nbsp; His initial class was
rudimentry and simply added scores.&amp;nbsp; Test cases were written for several of the
simpler scenarios like frames of all zeroes and frames that did not include strikes
or spares.&amp;nbsp; Youc an actually read about this in Cory's Blog entry here: &lt;a href="http://www.cornetdesign.com/2006/11/bowling-revisted.html#links"&gt;http://www.cornetdesign.com/2006/11/bowling-revisted.html#links&lt;/a&gt;.&amp;nbsp;
The demonstration and interactive portion of the talk began when we started covering
the spare and strike cases.&amp;nbsp; Cory went into covering the spare scenarios and
we quickly came up with a solution.&amp;nbsp; But while designing the solution, it became
clear to me that the way we were implementing it was not very 'friendly' for implementing
the upcoming strike cases.&amp;nbsp; And this is where the fun began... Cory preached
the Agile / TDD gospel here: solve the problem you are workin on and then move on.&amp;nbsp;
I was a bit resistant to his at first but also see its wisdom.&amp;nbsp; More time than
I care to admit, I get bogged down in trying to design out the entire solution for
eevery possible case before I get heavy into coding.&amp;nbsp; And I consequently do not
start coding soon enough, do not have prototypes ready on time, and generally cut
down on the time I have available to code.
&lt;/p&gt;
&lt;p&gt;
Looking at the world with Agile / TDD glasses on is kind of nice.&amp;nbsp; I don't necessarily
need to have the weight of the whole app or system on my shoulders at once.&amp;nbsp;
I concentrate on getting done what needs to be done now and adding or refactoring
in the next features that come down the pipe.&amp;nbsp; I shouldn't be afraid to write
code that I will be throwing away in a few weeks.&amp;nbsp; The important thing is not
the code but an understanding of the system that is being built and its rules.&amp;nbsp;
Well written code will be adaptable to a degree, but when there is a signicant change
to the system's requirements, we can't be afraid to throw that code away while retaining
its tests and wisdom.
&lt;/p&gt;
&lt;p&gt;
I am going to put an Agile / TDD book on the Christmas list.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.implementsivillage.net/aggbug.ashx?id=43ff3043-f24c-4a98-9caf-cd5610b93a25" /&gt;</description>
      <comments>http://www.implementsivillage.net/CommentView,guid,43ff3043-f24c-4a98-9caf-cd5610b93a25.aspx</comments>
      <category>Development;Learning</category>
    </item>
  </channel>
</rss>