<?xml version="1.0" encoding="utf-8"?><rss version="2.0"><channel><title>.Net</title><link>http://www.planettelex.net:80/blog/categories/dotnet</link><description>.Net</description><item><title>Planet Telex .Net Library Open Sourced</title><link>http://www.planettelex.net:80/blog/planet-telex-.net-library-open-sourced</link><description>&lt;p&gt;We have been cultivating &lt;a href="/tools/microsoft/dotnet-library"&gt;a .Net library&lt;/a&gt; since the framework version 1.1, and have been evolving it over the years as the &lt;a target="_blank" href="http://en.wikipedia.org/wiki/.NET_Framework"&gt;.Net Framework&lt;/a&gt; improved and changed. It has recently been upgraded to .Net version 3.5 and made &lt;a target="_blank" href="https://github.com/PlanetTelexInc/dotnet-pt-library"&gt;open source on GitHub&lt;/a&gt;. Not only is it a useful collection of classes that assist in rapid development, but we consider it to be a good example of the quality of our work. It is well tested, &lt;a target="_blank" href="http://planettelexinc.github.com/dotnet-pt-library/"&gt;fully documented&lt;/a&gt; (with compiled html and xml versions), and conforms to a number of good practices. For example, you will see consistent naming conventions that are enforced by powerful IDE tools like &lt;a target="_blank" href="http://www.jetbrains.com/resharper/"&gt;ReSharper&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The code itself is readable- explicitly named variables and well formatted syntax. For this reason, in-code comments are not excessive. The code itself can be read and explains &lt;em&gt;what&lt;/em&gt; is being done. In-code comments appear only when it isn't easily apparent &lt;em&gt;why&lt;/em&gt; a piece of code is doing what it is doing. We are also proud of our namespacing and class naming in the library. They mirror the standard .Net namespaces where it makes sense, and all are semantically organized.&lt;/p&gt;
&lt;p&gt;Currently we have 4 assemblies in &lt;a href="/tools/microsoft/dotnet-library"&gt;our library&lt;/a&gt;:&lt;/p&gt;
&lt;table&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Assembly&lt;/td&gt;
&lt;td&gt;Description&lt;/td&gt;
&lt;td&gt;Dependencies&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PlanetTelex.dll&lt;/td&gt;
&lt;td&gt;A general purpose library that can be used in any application context. Includes a &lt;a target="_blank" href="http://en.wikipedia.org/wiki/Regular_expression"&gt;regular expression library&lt;/a&gt;, extension and utility methods to common data types like String and DateTime, and much more.&lt;/td&gt;
&lt;td&gt;System, System.Configuration, System.Core, System.Data, System.Runtime.Serialization, System.ServiceModel.Web (used for &lt;a target="_blank" href="http://www.json.org/"&gt;JSON&lt;/a&gt; serialization), System.Xml&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PlanetTelex.Drawing.dll&lt;/td&gt;
&lt;td&gt;A basic programmatic image editor, including methods for color adjustments and rotation.&lt;/td&gt;
&lt;td&gt;System, System.Core, System.Drawing, &lt;a target="_blank" href="http://www.codeproject.com/Articles/11305/EXIFextractor-library-to-extract-EXIF-information"&gt;EXIFextractor&lt;/a&gt; (included)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PlanetTelex.Web.dll&lt;/td&gt;
&lt;td&gt;A library that can be used in any web context. It includes items like an advanced &lt;a target="_blank" href="http://www.robdixoniii.com/anatomy-of-a-uri/"&gt;URI&lt;/a&gt; parser, HTTP protocol helpers, and an RSS writer.&lt;/td&gt;
&lt;td&gt;System, System.Configuration, System.Core, System.Web, System.Xml, PlanetTelex&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;PlanetTelex.Web.Mvc.dll&lt;/td&gt;
&lt;td&gt;A library specific to &lt;a target="_blank" href="http://www.asp.net/mvc"&gt;ASP.NET MVC&lt;/a&gt; applications. Includes items like HTML and AJAX extensions and the ability to track a streaming result.&lt;/td&gt;
&lt;td&gt;System, System.Core, System.Web, System.Web.Abstractions, System.Web.Mvc, PlanetTelex, PlanetTelex.Web&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;It's easy to &lt;a target="_blank" href="https://github.com/PlanetTelexInc/dotnet-pt-library"&gt;browse the whole thing on GitHub&lt;/a&gt;. If it has something you could use, &lt;a target="_blank" href="https://github.com/PlanetTelexInc/dotnet-pt-library/downloads"&gt;download&lt;/a&gt; or &lt;a target="_blank" href="https://github.com/PlanetTelexInc/dotnet-pt-library/fork_select"&gt;fork the project&lt;/a&gt;. Happy coding!&lt;/p&gt;</description><pubDate>Tue, 27 Mar 2012 21:02:15 GMT</pubDate><guid isPermaLink="true">http://www.planettelex.net:80/blog/planet-telex-.net-library-open-sourced</guid></item><item><title>Orchard CMS Display Types</title><link>http://www.planettelex.net:80/blog/orchard-cms-display-types</link><description>&lt;p&gt;When trying to understand &lt;a target="_blank" href="http://docs.orchardproject.net/Documentation/Template-file-syntax-guide"&gt;templating&lt;/a&gt; and the &lt;a target="_blank" href="http://docs.orchardproject.net/Documentation/Understanding-placement-info"&gt;placement of parts&lt;/a&gt; in &lt;a target="_blank" href="http://www.orchardproject.net/"&gt;Orchard CMS&lt;/a&gt;, you will encounter the notion of "Display Types." By looking at examples, one quickly gets a sense of what these values are, and they are partially documented on the &lt;a target="_blank" href="http://docs.orchardproject.net/"&gt;official documentation site&lt;/a&gt;. But we found it irritating that we couldn't find a comprehensive list of possible values anywhere. So we searched the code base and found only four:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Detail&lt;/li&gt;
&lt;li&gt;Summary&lt;/li&gt;
&lt;li&gt;DetailAdmin&lt;/li&gt;
&lt;li&gt;SummaryAdmin&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Each content item has two types of &lt;a target="_blank" href="http://docs.orchardproject.net/Documentation/Accessing-and-rendering-shapes"&gt;templates&lt;/a&gt;: editor templates and display templates. Display types with the "Admin" suffix target the editor templates the others target the display templates. Similarly, there are two contexts for each content item: detail and summary. A content item is rendered as "summary" in both lists and projections as well as other modules that might aggregate content (like the &lt;a target="_blank" href="http://gallery.orchardproject.net/List/Modules/Orchard.Module.Downplay.Mechanics"&gt;sockets and connectors module&lt;/a&gt;).&lt;/p&gt;</description><pubDate>Tue, 27 Mar 2012 20:19:00 GMT</pubDate><guid isPermaLink="true">http://www.planettelex.net:80/blog/orchard-cms-display-types</guid></item></channel></rss>