<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="wordpress/2.3.1" -->
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	>

<channel>
	<title>Darkleo's Blog</title>
	<link>http://www.darkleo.com/blog</link>
	<description>Ein Schatz, der seinen Besitzer überallhin begleitet.</description>
	<pubDate>Fri, 20 Mar 2009 10:35:12 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.3.1</generator>
	<language>en</language>
			<item>
		<title>01.04 ab 18:00 ASP.NET MVC bei der .NET User Group Dortmund</title>
		<link>http://www.darkleo.com/blog/2009/03/18/0104-ab-1800-aspnet-mvc-bei-der-net-user-group-dortmund/</link>
		<comments>http://www.darkleo.com/blog/2009/03/18/0104-ab-1800-aspnet-mvc-bei-der-net-user-group-dortmund/#comments</comments>
		<pubDate>Wed, 18 Mar 2009 11:41:05 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Community]]></category>

		<category><![CDATA[User Group]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2009/03/18/0104-ab-1800-aspnet-mvc-bei-der-net-user-group-dortmund/</guid>
		<description><![CDATA[Die Dodnedder, die .NET-Community der Metropolregion Dortmund, treffen sich erneut.
Es geht um das Thema ASP.NET MVC Framework, es gibt einige Demos zu sehen. Und natürlich eine Menge kompetenter Fachgespräche.  
Wann:
Am 01.04.2009 18:00-20:00
WO:
Brockhaus AG
Pierbusch 17
44356 Lünen
GOOGLE: http://linkpin.de/7du6n1
Wie:
Anmeldung XING-Terminlink
Kosten:
Es wird Wert auf ein unkompliziertes Miteinander gelegt, deshalb gibt es keine formale Mitgliedschaft, die Teilnahme an Treffen [...]]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://www.do-dotnet.de" title="www.do-dotnet.de"><img border="0" align="right" width="80" src="http://www.darkleo.com/blog/wp-content/uploads/2008/04/do-dotnet-80x25.jpg" alt=".NET User Goup Dortmund (Do.NET)" height="25" /></a>Die Dodnedder, die .NET-Community der Metropolregion Dortmund, treffen sich erneut.<br />
Es geht um das Thema ASP.NET MVC Framework, es gibt einige Demos zu sehen. Und natürlich eine Menge kompetenter Fachgespräche. <img src='http://www.darkleo.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p><strong>Wann:</strong><br />
Am 01.04.2009 18:00-20:00</p>
<p><strong>WO:</strong><br />
Brockhaus AG<br />
Pierbusch 17<br />
44356 Lünen</p>
<p>GOOGLE: <a target="_blank" href="http://linkpin.de/7du6n1">http://linkpin.de/7du6n1</a></p>
<p><strong>Wie:</strong><br />
Anmeldung <a target="_blank" href="https://www.xing.com/events/321001">XING-Terminlink</a></p>
<p><strong>Kosten:</strong><br />
Es wird Wert auf ein unkompliziertes Miteinander gelegt, deshalb gibt es keine formale Mitgliedschaft, die Teilnahme an Treffen ist kostenlos.</p>
<p>Wir freuen uns.<br />
--------------------------------------------------------<br />
Weitere Infos: <a target="_blank" href="http://www.do-dotnet.de/">http://www.do-dotnet.de</a><br />
Wegbeschreibung: <a target="_blank" href="http://www.do-dotnet.de/front_content.php?idcat=4&amp;idart=54">http://www.do-dotnet.de/front_content.php?idcat=4&amp;idart=54</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2009/03/18/0104-ab-1800-aspnet-mvc-bei-der-net-user-group-dortmund/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Generic Config Collection Section</title>
		<link>http://www.darkleo.com/blog/2009/02/03/generic-config-collection-section/</link>
		<comments>http://www.darkleo.com/blog/2009/02/03/generic-config-collection-section/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 13:14:45 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Generics]]></category>

		<category><![CDATA[Klasse]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2009/02/03/generic-config-collection-section/</guid>
		<description><![CDATA[Alle Collection Items müssen einen Schlüssel beinhalten und dazu erstellen wir ein Interface
public interface IKeyElement
{object Key { get;}}
Dieses Interface wird in der Generischen Klasse verwendet.

public class GenericElementCollection&#60;T&#62; : ConfigurationElementCollection where T : ConfigurationElement, IKeyElement, new()
{
public GenericElementCollection(){ } protected override ConfigurationElement CreateNewElement()
{return new T();}public T this[int index]
{
get{return (T)BaseGet(index);}
set
{
    if (BaseGet(index) != null)
     {BaseRemoveAt(index);}
   BaseAdd(index, value);
}
}

new public T [...]]]></description>
			<content:encoded><![CDATA[<p>Alle Collection Items müssen einen Schlüssel beinhalten und dazu erstellen wir ein Interface<br />
<font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">interface</font><font size="2"> </font><font size="2" color="#2b91af">IKeyElement<br />
</font><font size="2">{</font><font size="2" color="#0000ff">object</font><font size="2"> Key { </font><font size="2" color="#0000ff">get</font><font size="2">;}}</font></p>
<p>Dieses Interface wird in der Generischen Klasse verwendet.<br />
<font size="2"><br />
<font size="2" color="#0000ff">public<font size="2"> </font><font size="2" color="#0000ff">class</font><font size="2"> </font><font size="2" color="#2b91af">GenericElementCollection</font><font size="2">&lt;T&gt; : </font><font size="2" color="#2b91af">ConfigurationElementCollection</font><font size="2"> </font><font size="2" color="#0000ff">where</font><font size="2"> T : </font><font size="2" color="#2b91af">ConfigurationElement</font><font size="2">, </font><font size="2" color="#2b91af">IKeyElement</font><font size="2">, </font><font size="2" color="#0000ff">new</font><font size="2">()<br />
{<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> GenericElementCollection(){ }</font></font></font><font size="2"><font size="2" color="#0000ff"><font size="2"> </font></font></font><font size="2"><font size="2" color="#0000ff"><font size="2"><font size="2" color="#0000ff">protected</font><font size="2"> </font><font size="2" color="#0000ff">override</font><font size="2"> </font><font size="2" color="#2b91af">ConfigurationElement</font><font size="2"> CreateNewElement()<br />
{</font><font size="2" color="#0000ff">return</font><font size="2"> </font><font size="2" color="#0000ff">new</font><font size="2"> T();}<font size="2" color="#0000ff">public</font><font size="2"> T </font><font size="2" color="#0000ff">this</font><font size="2">[</font><font size="2" color="#0000ff">int</font><font size="2"> index]<br />
{<br />
</font><font size="2" color="#0000ff">get</font><font size="2">{</font><font size="2" color="#0000ff">return</font><font size="2"> (T)BaseGet(index);}<br />
</font><font size="2" color="#0000ff">set<br />
</font><font size="2">{<br />
</font><font size="2" color="#0000ff">    if</font><font size="2"> (BaseGet(index) != </font><font size="2" color="#0000ff">null</font><font size="2">)<br />
     {BaseRemoveAt(index);</font><font size="2">}<br />
   BaseAdd(index, </font><font size="2" color="#0000ff">value</font><font size="2">);<br />
}<br />
}<br />
</font><font size="2"><br />
</font><font size="2" color="#0000ff">new</font><font size="2"> </font><font size="2" color="#0000ff">public</font><font size="2"> T </font><font size="2" color="#0000ff">this</font><font size="2">[</font><font size="2" color="#0000ff">string</font><font size="2"> Name]<br />
{</font><font size="2" color="#0000ff">get</font><font size="2">{</font><font size="2" color="#0000ff">return</font><font size="2"> (T)BaseGet(Name);</font><font size="2">}}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">int</font><font size="2"> IndexOf(T element)<br />
{</font><font size="2" color="#0000ff">return</font><font size="2"> BaseIndexOf(element);}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> Add(T element)<br />
{BaseAdd(element);}<br />
</font><font size="2" color="#0000ff">protected</font><font size="2"> </font><font size="2" color="#0000ff">override</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> BaseAdd(</font><font size="2" color="#2b91af">ConfigurationElement</font><font size="2"> element)<br />
{BaseAdd(element, </font><font size="2" color="#0000ff">false</font><font size="2">);}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> Remove(T element)<br />
{</font></font></font></font></font><strong><u>if (BaseIndexOf(element) &gt;= 0){BaseRemove((element as IKeyElement).Key);}</u></strong><font size="2"><font size="2" color="#0000ff"><font size="2"><font size="2"><font size="2">}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> RemoveAt(</font><font size="2" color="#0000ff">int</font><font size="2"> index)<br />
{BaseRemoveAt(index);}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> Remove(</font><font size="2" color="#0000ff">string</font><font size="2"> key)<br />
{BaseRemove(key);}<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">void</font><font size="2"> Clear()<br />
{BaseClear();}<br />
</font><font size="2" color="#0000ff"><br />
public</font><font size="2"> </font><font size="2" color="#0000ff">override</font><font size="2"> </font><font size="2" color="#2b91af">ConfigurationElementCollectionType</font><font size="2"> CollectionType<br />
{</font><font size="2" color="#0000ff">get</font><font size="2">{</font><font size="2" color="#0000ff">return</font><font size="2"> </font><font size="2" color="#2b91af">ConfigurationElementCollectionType</font><font size="2">.AddRemoveClearMapAlternate;}}<br />
</font><font size="2" color="#0000ff"><br />
protected</font><font size="2"> </font><font size="2" color="#0000ff">override</font><font size="2"> </font><font size="2" color="#0000ff">object</font><font size="2"> GetElementKey(</font><font size="2" color="#2b91af">ConfigurationElement</font><font size="2"> element)<br />
</font></font></font></font></font>{<strong><u>return (element as IKeyElement).Key;</u></strong>}<font size="2"><font size="2" color="#0000ff"><font size="2"><font size="2"><strong><font size="2"><br />
</font></strong><font size="2"><br />
}</font></font></font></font></font><font size="2"><font size="2" color="#0000ff"><font size="2"> </font></font></font><font size="2"><br />
</font><strong>Beispiel:<br />
</strong><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">class </font><font size="2" color="#2b91af">MySection</font><font size="2"> : </font><font size="2" color="#2b91af">ConfigurationSection<br />
</font><font size="2">{</font><font size="2"><font size="2"><br />
 [</font><font size="2" color="#2b91af">ConfigurationProperty</font><font size="2">(</font><font size="2" color="#a31515">"gruppen"</font><font size="2">)]<br />
 [</font><font size="2" color="#2b91af">ConfigurationCollection</font><font size="2">(</font><font size="2" color="#0000ff">typeof</font><font size="2">(</font><font size="2" color="#2b91af">GenericElementCollection</font><font size="2">&lt;</font><font size="2" color="#2b91af">GruppenElement</font><font size="2">&gt;), AddItemName = </font><font size="2" color="#a31515">"gruppe"</font><font size="2">)]<br />
</font><font size="2" color="#0000ff"> public</font><font size="2"> </font><font size="2" color="#2b91af">GenericElementCollection</font><font size="2">&lt;</font><font size="2" color="#2b91af">GruppenElement</font><font size="2">&gt; GruppenCollection<br />
 {<br />
</font><font size="2" color="#0000ff">  get</font><font size="2"> { </font><font size="2" color="#0000ff">return</font><font size="2"> </font><font size="2" color="#0000ff">this</font><font size="2">[</font><font size="2" color="#a31515">"gruppen"</font><font size="2">] </font><font size="2" color="#0000ff">as</font><font size="2"> </font><font size="2" color="#2b91af">GenericElementCollection</font><font size="2">&lt;</font><font size="2" color="#2b91af">GruppenElement</font><font size="2">&gt;; }<br />
 }<br />
</font></font><font size="2"><font size="2">}</font></font><font size="2"><font size="2">Ein Klassen Element:</font></font><font size="2"><font size="2"><font size="2"><font size="2" color="#0000ff">public<font size="2"> </font><font size="2" color="#0000ff">class</font><font size="2"> </font><font size="2" color="#2b91af">GruppenElement</font><font size="2"> : </font><font size="2" color="#2b91af">ConfigurationElement</font><font size="2">, </font><font size="2" color="#2b91af">IKeyElement<br />
</font><font size="2">{<br />
</font><font size="2">[</font><font size="2" color="#2b91af">ConfigurationProperty</font><font size="2">(</font><font size="2" color="#a31515">"name"</font><font size="2">, DefaultValue = </font><font size="2" color="#a31515">""</font><font size="2">, IsRequired = </font><font size="2" color="#0000ff">true</font><font size="2">)]<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#2b91af">String</font><font size="2"> Name<br />
{</font><font size="2" color="#0000ff">get</font><font size="2">{</font><font size="2" color="#0000ff">return</font><font size="2"> </font><font size="2" color="#008000">(String)this["name"];</font><font size="2">}</font><font size="2">}</font></font></font><font size="2"><font size="2">[<font size="2" color="#2b91af">ConfigurationProperty</font><font size="2">(</font><font size="2" color="#a31515">"startUrl"</font><font size="2">, DefaultValue = </font><font size="2" color="#a31515">""</font><font size="2">, IsRequired = </font><font size="2" color="#0000ff">false</font><font size="2">)]<br />
</font><font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#2b91af">String</font><font size="2"> StartUrl<br />
{</font><font size="2" color="#0000ff">get</font><font size="2">{ </font><font size="2" color="#0000ff">return</font><font size="2"> </font><font size="2" color="#008000">(String)this["startUrl"]; </font><font size="2">}</font></font></font><font size="2"><font size="2"> <font size="2" color="#0000ff">public</font><font size="2"> </font><font size="2" color="#0000ff">object</font><font size="2"> Key<br />
{</font><font size="2" color="#0000ff">get</font><font size="2"> { </font><font size="2" color="#0000ff">return</font><font size="2"> Name; }}<br />
</font><br />
</font><font size="2">}<br />
</font></font><font size="2"><font size="2" color="#0000ff"><br />
</font></font><strong>Configuration</strong><font size="2"><font size="2" color="#0000ff"><br />
&lt;<font size="2" color="#a31515">section</font><font size="2" color="#0000ff"> </font><font size="2" color="#ff0000">name</font><font size="2" color="#0000ff">=</font><font size="2">"</font><font size="2" color="#0000ff">SectionNameAusDerSectionDefinition</font><font size="2">"</font><font size="2" color="#0000ff"> </font><font size="2" color="#ff0000">type</font><font size="2" color="#0000ff">=</font><font size="2">"</font><font size="2" color="#0000ff">Configuration.MySection</font><font size="2">"</font><font size="2" color="#0000ff"><br />
</font><font size="2" color="#ff0000">allowLocation</font><font size="2" color="#0000ff">=</font><font size="2">"</font><font size="2" color="#0000ff">true</font><font size="2">"</font><font size="2" color="#0000ff"> </font><font size="2" color="#ff0000">allowDefinition</font><font size="2" color="#0000ff">=</font><font size="2">"</font><font size="2" color="#0000ff">Everywhere</font><font size="2">"</font><font size="2" color="#0000ff"> /&gt;</font></font></font><font size="2"><font size="2" color="#0000ff"><font size="2">&lt;SectionNameAusDerSectionDefinition&gt;<br />
&lt;gruppen&gt;<br />
 &lt;gruppe name="name1" startUrl=<a href="http://www.darkleo.com/">www.darkleo.com</a>&gt;<br />
 &lt;gruppe name="name2" startUrl=<a href="http://www.darkleo.com/blog">www.darkleo.com/blog</a>&gt;<br />
&lt;gruppen&gt;<br />
</font><font size="2">&lt;/SectionNameAusDerSectionDefinition&gt;</font></font></font></p>
<p></font></font></p>
<p align="center"><script type="text/javascript"><!--
google_ad_client = "pub-7251294127490724";
//468x60, Erstellt 14.11.07
google_ad_slot = "1956959577";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2009/02/03/generic-config-collection-section/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Speed für die Anwendung durch das vorladen der Assemblys</title>
		<link>http://www.darkleo.com/blog/2008/12/14/speed-fur-die-anwendung-durch-das-vorladen-der-assemblys/</link>
		<comments>http://www.darkleo.com/blog/2008/12/14/speed-fur-die-anwendung-durch-das-vorladen-der-assemblys/#comments</comments>
		<pubDate>Sun, 14 Dec 2008 22:17:13 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/12/14/speed-fur-die-anwendung-durch-das-vorladen-der-assemblys/</guid>
		<description><![CDATA[Hab da was Interessantes gefunden, wird die Anwendung mal zu langsam Aufgerufen, hilft folgender Codeausschnitt.
Thread jitter = new Thread(() =&#62;
{
  foreach (var type in Assembly.Load("MyHavyAssembly, Version=1.8.2008.8," +
           " Culture=neutral, PublicKeyToken=8744b20f8da049e3").GetTypes())
  {
    foreach (var method in type.GetMethods(BindingFlags.DeclaredOnly &#124;
                        BindingFlags.NonPublic &#124;
                        BindingFlags.Public &#124; BindingFlags.Instance &#124;
                        BindingFlags.Static))
    {
      System.Runtime.CompilerServices.RuntimeHelpers.PrepareMethod(method.MethodHandle);
    }
  }
});
jitter.Priority = ThreadPriority.Lowest;
jitter.Start();
http://www.codeproject.com/KB/dotnet/pre_JIT.aspx
]]></description>
			<content:encoded><![CDATA[<p>Hab da was Interessantes gefunden, wird die Anwendung mal zu langsam Aufgerufen, hilft folgender Codeausschnitt.</p>
<p>Thread jitter = <span class="code-keyword">new</span> Thread(() =&gt;<br />
{<br />
  <span class="code-keyword">foreach</span> (var type <span class="code-keyword">in</span> Assembly.Load(<span class="code-string">"</span><span class="code-string">MyHavyAssembly, Version=1.8.2008.8,"</span> +<br />
           <span class="code-string">"</span><span class="code-string"> Culture=neutral, PublicKeyToken=8744b20f8da049e3"</span>).GetTypes())<br />
  {<br />
    <span class="code-keyword">foreach</span> (var method <span class="code-keyword">in</span> type.GetMethods(BindingFlags.DeclaredOnly |<br />
                        BindingFlags.NonPublic |<br />
                        BindingFlags.Public | BindingFlags.Instance |<br />
                        BindingFlags.Static))<br />
    {<br />
      System.Runtime.CompilerServices.RuntimeHelpers.PrepareMethod(method.MethodHandle);<br />
    }<br />
  }<br />
});<br />
jitter.Priority = ThreadPriority.Lowest;<br />
jitter.Start();</p>
<p><a target="_blank" href="http://www.codeproject.com/KB/dotnet/pre_JIT.aspx">http://www.codeproject.com/KB/dotnet/pre_JIT.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/12/14/speed-fur-die-anwendung-durch-das-vorladen-der-assemblys/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Auf den GAC zugreifen ohne Exporer/Windows Einschränkungen</title>
		<link>http://www.darkleo.com/blog/2008/10/31/auf-den-gac-zugreifen-ohne-exporerwindows-einschrankungen/</link>
		<comments>http://www.darkleo.com/blog/2008/10/31/auf-den-gac-zugreifen-ohne-exporerwindows-einschrankungen/#comments</comments>
		<pubDate>Fri, 31 Oct 2008 10:32:33 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/10/31/auf-den-gac-zugreifen-ohne-exporerwindows-einschrankungen/</guid>
		<description><![CDATA[http://darkleo.com/darkleo/download/dir2drive.htm
Laufwerks Buchstaben auswählen: z.b. A (Assembly): Floppy hat fast keiner mehr :-) 
"c:\windows\assembly" als Pfad eintragen, und Updaten.
Nutzlich, wenn jemand mal die Assemblys und Versionen davon haben möchte  
Damit habt Ihr Zugriff auf den GAC und könnt euch auch die Einzelenen Versionen einer Assembyl ansehehen.
Änderungen des GACs auf eigene Gefahr.
]]></description>
			<content:encoded><![CDATA[<p><a href="http://darkleo.com/darkleo/download/dir2drive.htm">http://darkleo.com/darkleo/download/dir2drive.htm</a></p>
<p>Laufwerks Buchstaben auswählen: z.b. A (Assembly): Floppy hat fast keiner mehr :-) <br />
"c:\windows\<strong>assembly" </strong>als Pfad eintragen, und Updaten.</p>
<p>Nutzlich, wenn jemand mal die Assemblys und Versionen davon haben möchte <img src='http://www.darkleo.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Damit habt Ihr Zugriff auf den GAC und könnt euch auch die Einzelenen Versionen einer Assembyl ansehehen.<br />
<font color="#ff0000">Änderungen des GACs auf eigene Gefahr.</font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/10/31/auf-den-gac-zugreifen-ohne-exporerwindows-einschrankungen/feed/</wfw:commentRss>
		</item>
		<item>
		<title>NRW08 in Wuppertal am Fr. 12.09.2008</title>
		<link>http://www.darkleo.com/blog/2008/07/15/nrw08-in-wuppertal-am-fr-12092008/</link>
		<comments>http://www.darkleo.com/blog/2008/07/15/nrw08-in-wuppertal-am-fr-12092008/#comments</comments>
		<pubDate>Tue, 15 Jul 2008 08:33:24 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[Allgemein]]></category>

		<category><![CDATA[Community]]></category>

		<category><![CDATA[Fun]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/07/15/nrw08-in-wuppertal-am-fr-12092008/</guid>
		<description><![CDATA[Wieder findet die NRW0x Reihe statt, das größte regionale Community-Event für Software-Entwickler und IT-Professionals veranstaltet von der JustCommunity e.V..
NRW08 in "die boerse" Wuppertal am Fr. 12.09.2008
Auf 4 Tracks verteilt werden 24 interessante Themen vorgestellt.
Wir lernen immer wieder was Neues und das ist auch gut so, vielleicht trifft man sich dort  
Weitere Infos:  http://www.nrw08.de/



]]></description>
			<content:encoded><![CDATA[<p>Wieder findet die NRW0x Reihe statt, das größte regionale Community-Event für Software-Entwickler und IT-Professionals veranstaltet von der <a target="_blank" href="http://www.justcommunity.de">JustCommunity e.V.</a>.</p>
<p><strong>NRW08 in "die boerse" Wuppertal am Fr. 12.09.2008<br />
</strong>Auf 4 Tracks verteilt werden 24 interessante Themen vorgestellt.<br />
Wir lernen immer wieder was Neues und das ist auch gut so, vielleicht trifft man sich dort <img src='http://www.darkleo.com/blog/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>Weitere Infos:  <a target="_blank" href="http://www.nrw08.de/">http://www.nrw08.de/</a></p>
<p align="center"><script type="text/javascript"><!--
google_ad_client = "pub-7251294127490724";
//468x60, Erstellt 14.11.07
google_ad_slot = "1956959577";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/07/15/nrw08-in-wuppertal-am-fr-12092008/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Binding als Klasse und als Kurzschreibweise</title>
		<link>http://www.darkleo.com/blog/2008/07/10/binding-als-klasse-und-als-kurzschreibweise/</link>
		<comments>http://www.darkleo.com/blog/2008/07/10/binding-als-klasse-und-als-kurzschreibweise/#comments</comments>
		<pubDate>Thu, 10 Jul 2008 07:11:49 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[WPF]]></category>

		<category><![CDATA[XAML]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/07/10/binding-als-klasse-und-als-kurzschreibweise/</guid>
		<description><![CDATA[Wir haben die Möglichkeit auf Zweiweisen das Binding zu beschreiben:
Explizit Innerhalb des Contents des Buttons:
&#60;Button Name="button" Content="OK"&#62;
  &#60;Button.Background&#62;
    &#60;Binding ElementName="control" Path="Background" /&#62;
  &#60;/Button.Background&#62;
&#60;/Button&#62;
In kürzerer Schreibweise sieht es so aus
In Kurzform in den Attributen der Klasse Button:
&#60;Button Name="button" Content="OK"
Background="{Binding ElementName=control, Path=Background}" /&#62; 
Das Ergebnis der beiden ist Equvivalent.


]]></description>
			<content:encoded><![CDATA[<p>Wir haben die Möglichkeit auf Zweiweisen das Binding zu beschreiben:</p>
<p><em><span class="pun">Explizit Innerhalb des Contents des Buttons:<br />
&lt;</span><span class="tag">Button</span><span class="pln"> </span><span class="atn">Name</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> </span><span class="atn">Content</span><span class="pun">=</span><span class="atv">"OK"</span><span class="pun">&gt;</span></em><em><span class="pln"><br />
  </span><span class="pun">&lt;</span><span class="tag">Button</span><span class="pln">.</span><span class="atn">Background</span><span class="pun">&gt;</span></em><em><span class="pln"><br />
    </span><span class="pun">&lt;</span><span class="tag">Binding</span><span class="pln"> </span><span class="atn">ElementName</span><span class="pun">=</span><span class="atv">"control"</span><span class="pln"> </span><span class="atn">Path</span><span class="pun">=</span><span class="atv">"Background"</span><span class="pln"> </span><span class="pun">/&gt;</span></em><em><span class="pln"><br />
  </span><span class="pun">&lt;/</span><span class="tag">Button</span><span class="pln">.</span><span class="atn">Background</span><span class="pun">&gt;</span></em><em><span class="pln"><br />
</span><span class="pun">&lt;/</span><span class="tag">Button</span><span class="pun">&gt;</span></em></p>
<p><span class="pun">In kürzerer Schreibweise sieht es so aus</span></p>
<p><span class="pun"><em><span class="pun">In Kurzform in den Attributen der Klasse Button:<br />
&lt;</span><span class="tag">Button</span><span class="pln"> </span><span class="atn">Name</span><span class="pun">=</span><span class="atv">"button"</span><span class="pln"> <span class="atn">Content</span><span class="pun">=</span><span class="atv">"OK"<br />
</span></span><span class="atn">Background</span><span class="pun">=</span><span class="atv">"{Binding ElementName=control, Path=Background}" /</span><span class="pun">&gt;</span></em><em><span class="pln"> </span></em></span></p>
<p><span class="pun"><em><span class="pln"></span></em></span><span class="pun"><span class="pun">Das Ergebnis der beiden ist Equvivalent.</span></span></p>
<p><span class="pun"><span class="pun"></span></span></p>
<p align="center"><!--adsense--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/07/10/binding-als-klasse-und-als-kurzschreibweise/feed/</wfw:commentRss>
		</item>
		<item>
		<title>.NET User Group Dortmund &#8220;Do.NET&#8221; 11.06 ab 18:00</title>
		<link>http://www.darkleo.com/blog/2008/06/03/net-user-group-dortmund-donet-1106-ab-1800/</link>
		<comments>http://www.darkleo.com/blog/2008/06/03/net-user-group-dortmund-donet-1106-ab-1800/#comments</comments>
		<pubDate>Tue, 03 Jun 2008 06:43:29 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[User Group]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/06/03/net-user-group-dortmund-donet-1106-ab-1800/</guid>
		<description><![CDATA[Die Dodnedder, die .NET-Community der Metropolregion Dortmund, treffen sich erneut am 11.06. ab 18:00 Uhr. Es geht um das Thema .NET Framework(WCF), es gibt einige neue Demos zu sehen und auch etwas zu gewinnen. Und natürlich eine Menge kompetenter Fachgespräche.
Das Thema ist der produktive Einsatz der Windows Communication Foundation. Planen Sie WCF produktiv einzusetzen? Sind [...]]]></description>
			<content:encoded><![CDATA[<p>Die Dodnedder, die .NET-Community der Metropolregion Dortmund, treffen sich erneut <strong>am 11.06. ab 18:00 Uhr</strong>. Es geht um das Thema .NET Framework(WCF), es gibt einige neue Demos zu sehen und auch etwas zu gewinnen. Und natürlich eine Menge kompetenter Fachgespräche.</p>
<p><strong>Das Thema</strong> ist der produktive Einsatz der <strong>Windows Communication Foundation</strong>. Planen Sie WCF produktiv einzusetzen? Sind Sie vielleicht schon bei der Umsetzung und haben sich „halb-tot konfiguriert"? Daniel Fisher und Michael Willers geben wertvolle Tipps und Tricks aus 2 Jahren Ihrer praktischer Erfahrung mit der Technologie in Projekten und plaudern über die Interna der universellen Kommunikationsinfrastruktur der Windows-Plattform.</p>
<p><strong>Die Sprecher</strong> sind Daniel Fisher und Michael Willers, diese haben Europaweit Vorträge auf Konferenzen zu .NET Themen gehalten und sind die Gründer des Unternehmens <a target="_blank" href="http://www.devcoach.de">devcoach®.</a></p>
<p>Kostenlose Anmeldung: <a target="_blank" href="http://www.xing.com/app/events?op=detail;id=216824" title="XING">XING Termin</a><br />
Weitere Infos: <a target="_blank" href="http://www.do-dotnet.de/front_content.php?idcat=4&amp;idart=44">http://www.do-dotnet.de</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/06/03/net-user-group-dortmund-donet-1106-ab-1800/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ASP.NET Monitoring</title>
		<link>http://www.darkleo.com/blog/2008/04/29/aspnet-monitoring/</link>
		<comments>http://www.darkleo.com/blog/2008/04/29/aspnet-monitoring/#comments</comments>
		<pubDate>Tue, 29 Apr 2008 15:25:08 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[ASP.NET]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[Frameworks]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/04/29/aspnet-monitoring/</guid>
		<description><![CDATA[Wäre es nicht einfach Klasse eigene ASP.NET Anwendungem im Detail in Echtzeit zu monitoren?
Mit monitoren ist gemeint, zu sehen wie performant die Anwendung ist (beobachten) um bei Problemen in das System eingreifen zu können (reagieren).
Ich stelle dieses Framework zum Testen zur Verfügung.
Funktionsweise:
Metricsobjekte: Sammeln von Informationen über das Verhalten von ASP.NET Application.
Storeobjekte sind in Metrics instanziert [...]]]></description>
			<content:encoded><![CDATA[<p>Wäre es nicht einfach Klasse eigene ASP.NET Anwendungem im Detail in Echtzeit zu monitoren?<br />
Mit monitoren ist gemeint, zu sehen wie performant die Anwendung ist (beobachten) um bei Problemen in das System eingreifen zu können (reagieren).</p>
<p><strong>Ich stelle </strong><strong>dieses Framework </strong><strong>zum Testen zur Verfügung.</strong></p>
<p><strong>Funktionsweise:<br />
</strong><em>Metricsobjekte</em>: Sammeln von Informationen über das Verhalten von ASP.NET Application.<br />
<em>Storeobjekte</em> sind in Metrics instanziert und bilden die Speicher- und Ladeschicht.<br />
<em>Stateinstanzen</em> prüfen ob Performanceprobleme im System vorhanden sind, Reaktionen darauf muss jeder selbst (web.config) einstellen oder ausprogrammieren.<br />
Dafür gibt es Responder/Container oder auch die direkte Ansprache des Providers oder des Module-interfaces.<br />
<em>IPerformanceProvider</em> ist das FacadenInterface über welches das Do.NET Pla Framework angesprochen werden kann.</p>
<p>Wieso habe ich das erwähnt? Weiß ich selbst nicht!<br />
Es sind Interfaces die jeder selbst implementieren kann aber nicht muss, denn das Framework hat schon eine eigene ProviderGruppe: "PerformanceCounter".<br />
Zum Reagieren gibt es den ResponderDefault der einfach eine Exception wirft.</p>
<p>Das Framework wird über ein HttpModul angeschlossen.</p>
<p><font color="#0000ff" size="2">&lt;</font><font color="#a31515" size="2">httpModules</font><font color="#0000ff" size="2">&gt;<br />
</font><font color="#0000ff" size="2">   &lt;</font><font color="#a31515" size="2">add</font><font color="#0000ff" size="2"> </font><font color="#ff0000" size="2">name</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">PlaModule</font><font size="2">"</font><font color="#0000ff" size="2"> </font><font color="#ff0000" size="2">type</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">Do.NET.Pla.PlaModule, Do.NET.Pla</font><font size="2">"</font><font color="#0000ff" size="2">/&gt;</font></p>
<p><font color="#0000ff" size="2"><font color="#000000" size="3"> Und die Provider müssen bekannt gegeben werden.</font> </font></p>
<p><font color="#0000ff" size="2">&lt;<font color="#a31515" size="2">section</font><font color="#0000ff" size="2"> </font><font color="#ff0000" size="2">name</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">performanceConfiguration</font><font size="2">"</font><font color="#0000ff" size="2"> </font><font color="#ff0000" size="2">type</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">Do.NET.Pla.Configuration.PerformanceConfiguration</font><font size="2">"</font><font color="#0000ff" size="2">/&gt;</font></font></p>
<p><font color="#0000ff" size="2"><br />
</font><font color="#0000ff" size="2"><font color="#0000ff" size="2">&lt;<font color="#a31515" size="2">performanceConfiguration </font><font color="#ff0000" size="2">enabled</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">true</font><font size="2">" </font><font color="#ff0000" size="2">providerGroup</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">PerformanceCounter oder Custom</font><font size="2">" </font><font color="#ff0000" size="2">applicationName</font><font color="#0000ff" size="2"> =</font><font size="2">"</font><font color="#0000ff" size="2">Portal.Pla</font><font size="2">"</font><font color="#0000ff" size="2">&gt;<br />
</font></font></font><font color="#0000ff" size="2"><font color="#0000ff" size="2"><font color="#0000ff" size="2">&lt;/<font color="#a31515">performanceConfiguration</font>&gt;</font></font></font></p>
<p><font color="#0000ff" size="2"><font color="#0000ff" size="2"><img src="http://www.darkleo.com/blog/wp-content/uploads/2008/04/pc.png" alt="pc.png" /><font color="#0000ff" size="2"> </font></font></font><font color="#0000ff" size="2"><font color="#0000ff" size="2"><font color="#0000ff" size="2"><font color="#000000">Für Reaktionsmöglichkeiten per Web.config</font></font><font color="#0000ff" size="2"><br />
<font color="#0000ff" size="2">&lt;<font color="#a31515" size="2">add</font><font color="#0000ff" size="2"> </font><font color="#ff0000" size="2">name</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">_default.*</font><font size="2">"<br />
</font><font color="#ff0000" size="2">enabled</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">true</font><font size="2">"<br />
</font><font color="#ff0000" size="2">isCriticalPerformance</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">true</font><font size="2">"<br />
</font><font color="#ff0000" size="2">criticalResponder</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">PlaWeb.Extend.RedirectResponder, PlaWeb.Extend, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</font><font size="2">"<br />
</font><font color="#ff0000" size="2">description</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">Wartungsarbeiten von 2008-2009</font><font size="2">"<br />
</font><font color="#ff0000" size="2">freezeStartDate</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">01.01.2008 00:00</font><font size="2">"<br />
</font><font color="#ff0000" size="2">freezeEndDate</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">01.01.2009 00:00</font><font size="2">"<br />
</font><font color="#ff0000" size="2">any</font><font color="#0000ff" size="2">=</font><font size="2">"</font><font color="#0000ff" size="2">sonstige parameter optional</font><font size="2">"</font><font color="#0000ff" size="2">/&gt;<br />
&lt;!--</font><font color="#008000" size="2">criticalResponder="Do.NET.Pla.PerformanceCriticalResponderDefault"</font><font color="#0000ff" size="2">--&gt;<br />
</font></font></font></font></font></p>
<p><font size="2"><font size="2"><font size="2"><font size="2"><font color="#000000"><em>"_default.*"</em> gibt an, dass die _default.* Seite in allen Contexten überprüft werden soll und bei Eingabe von isCriticalPerformance==true die Reaktionsinstanz erzeugen soll.<br />
</font></font></font></font></font></p>
<p><font size="2"><font size="2"><font color="#000000" size="2">Die Custom Responder Klasse sieht so aus:</font></font></font></p>
<p><font color="#0000ff" size="2"><font color="#0000ff" size="2">public<font color="#000000" size="2"> </font><font color="#0000ff" size="2">class</font><font color="#000000" size="2"> </font><font color="#2b91af" size="2">RedirectResponder</font><font color="#000000" size="2"> : </font><font color="#2b91af" size="2">PerformanceCriticalResponderBase<br />
</font><font size="2">{<br />
</font><font color="#0000ff" size="2">public</font><font size="2"> </font><font color="#0000ff" size="2">override</font><font size="2"> </font><font color="#0000ff" size="2">void</font><font size="2"> CallBackCriticalPerformance(</font><font color="#0000ff" size="2">object</font><font size="2"> sender, </font><font color="#2b91af" size="2">EventArgs</font><font size="2"> e)<br />
{<br />
</font><font color="#2b91af" size="2">IPerformanceState</font><font size="2"> state = (</font><font color="#2b91af" size="2">IPerformanceState</font><font size="2">)sender;<br />
</font><font color="#2b91af" size="2">HttpContext</font><font size="2">.Current.Session[</font><font color="#a31515" size="2">"_lasterror"</font><font size="2">] = state;<br />
</font><font color="#2b91af" size="2">HttpContext</font><font size="2">.Current.Response.Redirect(</font><font color="#a31515" size="2">"~/Error.aspx"</font><font size="2">, </font><font color="#0000ff" size="2">true</font><font size="2">);</font><font color="#008000" size="2">//endresponse<br />
</font><font size="2">}<br />
}</font></font></font></p>
<p><font size="2"><font color="#000000" size="2">et voila</font></font></p>
<p>Würde mich freuen, wenn jemand Feedback gibt ob es Probleme gibt.</p>
<p>Im Sample ist der StateProvider auf die Web.config -&gt; WebService-Klasse angesetzt. Somit können die Seiten zusätzlich zur web.config über einen WebService gesteuert werden. (z.b. ab* für About.None oder alle Seiten die mit ab anfangen.)</p>
<p><font color="#0000ff" size="2"><font color="#0000ff" size="2">[<a href="http://www.do-dotnet.de/upload/download/folien/do-dotnet.de_asp.net_monitoring.ppt" target="_blank" title="ASP.NET Monitoring">Vortragsfolien</a>] [<a href="http://www.do-dotnet.de/upload/download/folien/ASP.NET_Monitoring_Sample.zip">Sample Project</a>]</font></font></p>
<p><font color="#0000ff" size="2">Happy monitoring!!!</font></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/04/29/aspnet-monitoring/feed/</wfw:commentRss>
		</item>
		<item>
		<title>ASP.NET Anzahl der Benutzer auf der Seite ausgeben.</title>
		<link>http://www.darkleo.com/blog/2008/04/23/aspnet-anzahl-der-benutzer-auf-der-seite-ausgeben/</link>
		<comments>http://www.darkleo.com/blog/2008/04/23/aspnet-anzahl-der-benutzer-auf-der-seite-ausgeben/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 13:06:03 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/04/23/aspnet-anzahl-der-benutzer-auf-der-seite-ausgeben/</guid>
		<description><![CDATA[Hab versucht die Anzahl der Benutzer auf der Seite festzustellen und habe nichts passendes gefunden. Wie immer, wenn etwas nicht da ist, wird versucht sich selbst am Schnellsten und Besten zu helfen  
Wäre auch klasse wenn ich nicht unbedingt auf der MasterPage Code verteile, also machen wir uns ein cooles HttpModule welches und auf [...]]]></description>
			<content:encoded><![CDATA[<p><a target="_blank" href="http://www.do-dotnet.de"><img border="0" align="right" src="http://www.darkleo.com/blog/wp-content/uploads/2008/04/do-dotnet-80x25.jpg" alt="do-dotnet-80x25.jpg" /></a>Hab versucht die Anzahl der Benutzer auf der Seite festzustellen und habe nichts passendes gefunden. Wie immer, wenn etwas nicht da ist, wird versucht sich selbst am Schnellsten und Besten zu helfen <img src='http://www.darkleo.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Wäre auch klasse wenn ich nicht unbedingt auf der MasterPage Code verteile, also machen wir uns ein cooles HttpModule welches und auf die Frage "wieviele Benutzer sind auf der ASP.NET Webseite?" eine Antwort liefert.</p>
<p><font size="2">Label1.Text = </font><font size="2" color="#0000ff">string</font><font size="2">.Format(</font><font size="2" color="#a31515">"Es sind {0} Benutzer auf der Webseite."</font><font size="2">,<br />
                                     Do.NET.Web.</font><font size="2" color="#2b91af">CurrentUserModule</font><font size="2">.Count);</font></p>
<p><font size="2">So binden wir das HttpModule zu unserer Webseite an und damit ist es schon Verfügbar.<br />
</font><font size="2"><font size="2" color="#008000">&lt;httpModules&gt;<br />
   &lt;add name="CurrentUserModule" type="Do.NET.Web.CurrentUserModule, Do.NET.Web"/&gt;<br />
&lt;/httpModules&gt;</font></font></p>
<p><font size="2"><font size="2" color="#008000"> </font></font><font size="2"><font size="2" color="#008000"><font color="#000000">Funktioniert nur wenn Session eingeschaltet ist, da das HttpModule sich an den Sessions orientiert.<br />
</font></font></font><font size="2"><font size="2" color="#008000"><font size="2" color="#008000">Beispiel Session Config:<br />
&lt;system.web&gt;<br />
    &lt;sessionState mode="InProc" cookieless="UseUri" timeout="30"/&gt;</font></font></font></p>
<p><font size="2"><font size="2"><font size="2" color="#000000">Wie mit Hilfe von HttpModulen die gesamte ASP.NET Webapplication in Echtzeit gemonitort werden kann, wird auf dem .NET User Group Dortmund "<strong>Do.Net</strong>" Treffen am 25.04.08 vorgestellt.  Mit Monitoring ist überwachen und reagieren gemeint .</font></font></font></p>
<p><font size="2">Weitere Infos dazu auf <a target="_blank" href="http://www.do-dotnet.de">www.do-dotnet.de</a>.</font></p>
<p><font size="2"><font size="2" color="#008000"><font size="2" color="#008000"><a href="http://www.darkleo.com/blog/wp-content/uploads/2008/04/donetweb.zip" title="donetweb.zip">Download donetweb Solution</a><br />
</font></font></font><font size="2"><font size="2" color="#008000"><font size="2" color="#008000"><a href="http://www.darkleo.com/blog/wp-content/uploads/2008/04/currentusermodule.cs" title="currentusermodule.cs">currentusermodule.cs</a></font></font></font></p>
<p><font size="2" color="#000000">Ein anderer Ansatz mit MembershipProvidern wird hier beschrieben: <a href="http://aspnet.4guysfromrolla.com/articles/041608-1.aspx">http://aspnet.4guysfromrolla.com/articles/041608-1.aspx</a></font></p>
<p align="center"><!--adsense--></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/04/23/aspnet-anzahl-der-benutzer-auf-der-seite-ausgeben/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Afterlaunch war letzte Woche, nächste Woche .NET User Group Dortmund :)</title>
		<link>http://www.darkleo.com/blog/2008/04/14/afterlaunch-war-letzte-woche-nachste-woche-net-user-group-dortmund/</link>
		<comments>http://www.darkleo.com/blog/2008/04/14/afterlaunch-war-letzte-woche-nachste-woche-net-user-group-dortmund/#comments</comments>
		<pubDate>Mon, 14 Apr 2008 11:00:20 +0000</pubDate>
		<dc:creator>darkleo</dc:creator>
		
		<category><![CDATA[.NET]]></category>

		<category><![CDATA[User Group]]></category>

		<category><![CDATA[VisualStudio]]></category>

		<guid isPermaLink="false">http://www.darkleo.com/blog/2008/04/14/afterlaunch-war-letzte-woche-nachste-woche-net-user-group-dortmund/</guid>
		<description><![CDATA[Der Tag verging,
und halb betrunken
ist Saltan ins Bett gesunken ...
Ich war dort, trank Met und Bier,
naß ward nur der Schnauzbart mir.
[Puschkin]
Die Afterlaunch Veranstaltung ist sehr interessant gewesen, vor allem auch das Thema "Visual Studio 2008 - Tipps und Tricks für die Praxis"von Roland Weigelt von der User Group Bonn www.bonn-to-code.net.
Auf der .NET User Group Dortmund findet auch ein [...]]]></description>
			<content:encoded><![CDATA[<p>Der Tag verging,<br />
und halb betrunken<br />
ist Saltan ins Bett gesunken ...<br />
Ich war dort, trank Met und Bier,<br />
naß ward nur der Schnauzbart mir.<br />
[Puschkin]</p>
<p>Die <a target="_blank" href="http://www.afterlaunch.de">Afterlaunch</a> Veranstaltung ist sehr interessant gewesen, vor allem auch das Thema "Visual Studio 2008 - Tipps und Tricks für die Praxis"von <a target="_blank" href="http://www.roland-weigelt.de/">Roland Weigelt</a> von der User Group Bonn <a href="http://www.bonn-to-code.net/">www.bonn-to-code.net</a>.</p>
<p>Auf der .NET User Group Dortmund findet auch ein Vortrag über "Tipps und Tricks in Visual Studio 2008" statt, wer afterlaunch verpasst hat, kann sich auf <strong><a target="_blank" href="http://do-dotnet.de">Do-DotNet.de</a></strong> Webseite für das Treffen am 25.04 anmelden und für alle die da waren, es findet eine vertiefung in die Tipps und Tricks statt also <a target="_blank" href="http://do-dotnet.de">Anmelden</a> lohnt sich. <img src='http://www.darkleo.com/blog/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Die Teilnahme an den Treffen ist kostenlos, es gibt auch keine formale Mitgliedschaft.</p>
<p>Weitere Information findet ihr hier: <a target="_blank" href="http://www.do-dotnet.de">http://www.do-dotnet.de</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.darkleo.com/blog/2008/04/14/afterlaunch-war-letzte-woche-nachste-woche-net-user-group-dortmund/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
