<?xml version="1.0" encoding="UTF-8"?>
<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/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Orbital coder</title>
	<atom:link href="http://orbitalcoder.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://orbitalcoder.wordpress.com</link>
	<description>var posts = my.Brain.Where(thoughts =&#62; thoughts.Relevant);</description>
	<lastBuildDate>Tue, 22 Sep 2009 20:33:55 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='orbitalcoder.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Orbital coder</title>
		<link>http://orbitalcoder.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://orbitalcoder.wordpress.com/osd.xml" title="Orbital coder" />
	<atom:link rel='hub' href='http://orbitalcoder.wordpress.com/?pushpress=hub'/>
		<item>
		<title>WCF, jQuery and Json</title>
		<link>http://orbitalcoder.wordpress.com/2009/09/22/wcf-jquery-and-json/</link>
		<comments>http://orbitalcoder.wordpress.com/2009/09/22/wcf-jquery-and-json/#comments</comments>
		<pubDate>Tue, 22 Sep 2009 20:33:55 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=17</guid>
		<description><![CDATA[In one of my numerous attempts to use smarter and more clean coding I ended up using WCF and jQuery to produce a simple navigation by showing a number of items in a select box. I found the experience to be so fulfilling that I wanted to share it. I started by creating a simple [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=17&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In one of my numerous attempts to use smarter and more clean coding I ended up using WCF and jQuery to produce a simple navigation by showing a number of items in a select box. I found the experience to be so fulfilling that I wanted to share it.</p>
<p>I started by creating a simple WCF service with the following interface:<br />
<code>[ServiceContract]<br />
public interface ICatalog<br />
{<br />
[OperationContract]<br />
[WebGet(ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]<br />
List GetCatalog(int cid);<br />
}</code><br />
What enables the service to serve Json output is in the WebGet attribute, the ResponseFormat property that states that we will use Json in the response and the BodyStyle property that in my case states that we will use a bare Json response.</p>
<p>The implementation of the interface ICatalog looks in my example like this:<br />
<code>public class Catalog : ICatalog<br />
{<br />
public List GetCatalog(int cid)<br />
{<br />
var l = new List();</code><br />
What this code does is rather self explanatory, I just retrieves some categories and products from a database, in this case a MySql database, and from the result that I get I create a list of objects containing a couple of child items.</p>
<p>try<br />
{<br />
var sql = &#8220;SELECT categoryid, categoryname &#8221; +<br />
&#8220;FROM mod_katalog_config&#8221;;<br />
var constr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;<br />
var dr = MySqlHelper.ExecuteReader(constr, sql);</p>
<p>if (dr.HasRows)<br />
{<br />
while (dr.Read())<br />
{<br />
var c = new CategoryData<br />
{<br />
CategoryId = int.Parse(dr["categoryid"].ToString()),<br />
CategoryName = dr["categoryname"].ToString(),<br />
CatalogItems = new List()<br />
};<br />
var csql = &#8220;select id, name from mod_catalog_products where categori_id = &#8221; + c.CategoryId;<br />
var drc = MySqlHelper.ExecuteReader(constr, csql);<br />
if (drc.HasRows)<br />
{<br />
while (drc.Read())<br />
{<br />
c.CatalogItems.Add<br />
(<br />
new CatalogData<br />
{<br />
ProductId = int.Parse(drc["id"].ToString()),<br />
ProductName = drc["name"].ToString()<br />
}<br />
);<br />
}<br />
}<br />
l.Add(c);<br />
}<br />
}<br />
}<br />
catch (Exception)<br />
{</p>
<p>l.Add<br />
(<br />
new CategoryData<br />
{<br />
CategoryId = 0,<br />
CategoryName = &#8220;No items found&#8221;,<br />
CatalogItems = new List()<br />
}<br />
);<br />
}</p>
<p>return l;<br />
}<br />
}</p>
<p>[DataContract]<br />
public class CatalogData<br />
{<br />
[DataMember]<br />
public int ProductId { get; set; }<br />
[DataMember]<br />
public string ProductName { get; set; }<br />
}</p>
<p>[DataContract]<br />
public class CategoryData<br />
{<br />
[DataMember]<br />
public int CategoryId { get; set; }<br />
[DataMember]<br />
public string CategoryName { get; set; }<br />
[DataMember]<br />
public List CatalogItems { get; set; }<br />
}</p>
<p>To be able to use this service I also had to change some of the default behaviors that are created for my service in the web.config, namely I had to add a endpoint behavior which I called JsonBehavior and which contained just one child tag stating webHttp and I used that behavior in my endpoint entry in the services part of the web.config.</p>
<p>The jQuery part in the web page is according to this:<br />
<code><br />
$().ready(function() {<br />
$.getJSON("Catalog.svc/GetCatalog", function(data) {<br />
$.each(data, function(i, data) {<br />
var create = '';<br />
$.each(data.CatalogItems, function(j, item) {<br />
create += '' + item.ProductName + '';<br />
});<br />
create += '';<br />
$("#categorylist").append(create);<br />
});<br />
}<br />
);<br />
$("#categorylist").change(function() {<br />
document.location.href = "/se/courses.aspx?product_id=" + $("#categorylist").val();<br />
});<br />
});<br />
</code><br />
and what this really does is that it retrieves tha data in the form of an ordinary list of objects, and iterates over each of the items and in turn picks out the corresponding child items that they consist of and creates a string that will be appended to the select box that is named categorylist.</p>
<p>Not a thorough post I know but</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/17/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/17/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/17/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=17&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2009/09/22/wcf-jquery-and-json/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
		<item>
		<title>Proposed solution for the NHibernate exception &#8220;Column &#8216;Reserved Word&#8217; does not belong to table ReservedWords.&#8221;</title>
		<link>http://orbitalcoder.wordpress.com/2009/08/18/proposed-solution-for-the-nhibernate-exception-column-reserved-word-does-not-belong-to-table-reservedwords/</link>
		<comments>http://orbitalcoder.wordpress.com/2009/08/18/proposed-solution-for-the-nhibernate-exception-column-reserved-word-does-not-belong-to-table-reservedwords/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 08:43:49 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[C#]]></category>
		<category><![CDATA[MySql]]></category>
		<category><![CDATA[NHibernate]]></category>
		<category><![CDATA[ORM]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=12</guid>
		<description><![CDATA[When I updated my NHibernate assembly to version 2.1.0.GA and tried to configure it against my MySQL installation with the .NET Connector v 5.2.7 I got an exception that I hadn&#8217;t encounter before: System.ArgumentException : Column &#8216;Reserved Word&#8217; does not belong to table ReservedWords. After some searching and digging I found that this was a [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=12&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When I updated my NHibernate assembly to version 2.1.0.GA and tried to configure it against my MySQL installation with the .NET Connector v 5.2.7 I got an exception that I hadn&#8217;t encounter before:</p>
<p>System.ArgumentException : Column &#8216;Reserved Word&#8217; does not belong to table ReservedWords.</p>
<p>After some searching and digging I found that this was a common problem when upgrading to the newer versions of the MySQL .NET Connectors and the cause seemed to be that the implementation of the DbConnection.GetSchema in the System.Data.Common namespace that is used when creating .NET connectors isn&#8217;t all that clear in MSDN and MySQL had changed their own implementation.</p>
<p>This change caused the exception in NHibernate because in the MySQLMetaData.cs the column name is reference by a hard coded string and thus resulted in a miss match between the column names. Here is the code that caused the problem:</p>
<p>public override ISet&lt;string&gt; GetReservedWords()<br />
  {<br />
   var result = new HashedSet&lt;string&gt;();<br />
   DataTable dtReservedWords = Connection.GetSchema(DbMetaDataCollectionNames.ReservedWords);<br />
   foreach (DataRow row in dtReservedWords.Rows)<br />
   {<br />
    result.Add(row["Reserved Word"].ToString());<br />
   }<br />
   return result;<br />
  }</p>
<p>Looking into how the MySQL team had implemented their connector and how NHibernate works and also searching through the documentation for the System.Data.Common namespace I propose a solution to this problem by using a similar approach as when calling the GetSchema with the static DbMetaDataCollectionNames.ReservedWords parameter and use the also static DbMetaDataColumnNames.ReservedWord when retrieving the reserved words column, resulting in the following:</p>
<p>public override ISet&lt;string&gt; GetReservedWords()<br />
{<br />
    var result = new HashedSet&lt;string&gt;();<br />
    DataTable dtReservedWords = Connection.GetSchema(DbMetaDataCollectionNames.ReservedWords);</p>
<p>    foreach (DataRow row in dtReservedWords.Rows)<br />
    {<br />
        result.Add(row[DbMetaDataColumnNames.ReservedWord].ToString());<br />
    }<br />
    return result;<br />
}</p>
<p>I have tested this solution against NHibernate 2.1.0.GA with the MySQL connectors 5.1.7, 5.2.7 and 6.0.4 and they seems to play nice with this update. See the issue here: <a href="http://nhjira.koah.net/browse/NH-1906">http://nhjira.koah.net/browse/NH-1906</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/12/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/12/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/12/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=12&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2009/08/18/proposed-solution-for-the-nhibernate-exception-column-reserved-word-does-not-belong-to-table-reservedwords/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
		<item>
		<title>Fluent NHibernate, Automapping and the MySql DateTime</title>
		<link>http://orbitalcoder.wordpress.com/2009/05/06/fluent-nhibernate-automapping-and-the-mysql-datetime/</link>
		<comments>http://orbitalcoder.wordpress.com/2009/05/06/fluent-nhibernate-automapping-and-the-mysql-datetime/#comments</comments>
		<pubDate>Wed, 06 May 2009 17:52:50 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[NHibernate]]></category>
		<category><![CDATA[MySql]]></category>
		<category><![CDATA[Fluent NHibernate]]></category>
		<category><![CDATA[ORM]]></category>
		<category><![CDATA[C#]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=10</guid>
		<description><![CDATA[Problem description I&#8217;m using MySql in a lot of my projects and because of that I&#8217;m facing the problem with the MySqlDateTime object, which not always plays so nice with .Net as you would like it to. This example is about the automapping feature of FluentNHibernate and the problem that arises when you try to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=10&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<h3>Problem description</h3>
<p>I&#8217;m using MySql in a lot of my projects and because of that I&#8217;m facing the problem with the MySqlDateTime object, which not always plays so nice with .Net as you would like it to. This example is about the automapping feature of FluentNHibernate and the problem that arises when you try to map a MySqlDateTime field, and then gets an Exception because this cant be converted directly into an DateTime object, or actually it can but in some cases MySql uses 0000-00-00 00:00:00 as a default value for the DateTime field and then you get a crash.</p>
<h3>The solution</h3>
<p>NHibernate has a very nice feature that save the day in this case, it is the IUserType that enabled you to create your own types that can be used in the mapping process. The IUserType that I&#8217;m using to solve the MySqlDateTime problem looks like this:</p>
<p>using System;<br />
using System.Data;<br />
using MySql.Data.Types;<br />
using NHibernate.UserTypes;</p>
<p>namespace Project.Core.UserType<br />
{<br />
    public class MySqlDateTimeType : IUserType<br />
    {<br />
        public new bool Equals(object x, object y)<br />
        {<br />
            if (x == null &amp;&amp; y == null)<br />
                return true;<br />
            if (x != null)<br />
                return x.Equals(y);<br />
            return y.Equals(x);<br />
        }</p>
<p>        public int GetHashCode(object x)<br />
        {<br />
            return x.GetHashCode();<br />
        }</p>
<p>        public object NullSafeGet(IDataReader rs, string[] names, object owner)<br />
        {<br />
            if (names.Length == 1)<br />
            {<br />
                object obj = rs[names[0]];</p>
<p>                if (null == obj || obj is DBNull)<br />
                    return new DateTime?();</p>
<p>                if (obj is MySqlDateTime)<br />
                {<br />
                    var mySqlDateTime = (MySqlDateTime)obj;<br />
                    if (mySqlDateTime.IsNull)<br />
                        return new DateTime?();<br />
                    if (0 == mySqlDateTime.Day || 0 == mySqlDateTime.Month || 0 == mySqlDateTime.Year)<br />
                        return new DateTime?();<br />
                    return mySqlDateTime.GetDateTime();<br />
                }<br />
                if (obj is DateTime)<br />
                    return (DateTime)obj;</p>
<p>                throw new InvalidCastException(&#8220;Can not convert object of type &#8221; +<br />
                    obj.GetType().FullName + &#8221; to &#8221; + typeof(MySqlDateTime?).FullName);<br />
            }<br />
            throw new InvalidCastException(&#8220;Single column expected.&#8221;);</p>
<p>        }</p>
<p>        public void NullSafeSet(IDbCommand cmd, object value, int index)<br />
        {<br />
           var param = cmd.Parameters[index] as IDataParameter;</p>
<p>            if (param != null)<br />
            {<br />
                param.DbType = DbType.DateTime;</p>
<p>                if (null == value)<br />
                {<br />
                    param.Value = DBNull.Value;<br />
                }<br />
                else if (value is MySqlDateTime)<br />
                {<br />
                    var mySqlDateTime = (MySqlDateTime)value;<br />
                    if (mySqlDateTime.IsNull)<br />
                        param.Value = DBNull.Value;<br />
                    else<br />
                        param.Value = mySqlDateTime.GetDateTime();<br />
                }<br />
                else if (value is DateTime)<br />
                {<br />
                    param.Value = value;<br />
                }<br />
            }</p>
<p>            if (value != null)<br />
                throw new ArgumentException(&#8220;Object of type &#8221; + typeof(MySqlDateTime).FullName +<br />
                                            &#8221; expected, but object of type &#8221; + value.GetType().FullName + &#8221; has been passed.&#8221;);<br />
        }</p>
<p>        public object DeepCopy(object value)<br />
        {<br />
            return value;<br />
        }</p>
<p>        public object Disassemble(object value)<br />
        {<br />
            return DeepCopy(value);<br />
        }<br />
        public bool IsMutable<br />
        {<br />
            get { return false; }<br />
        }</p>
<p>        public object Assemble(object cached, object owner)<br />
        {<br />
            return DeepCopy(cached);<br />
        }</p>
<p>        public object Replace(object original, object target, object owner)<br />
        {<br />
            return original;<br />
        }</p>
<p>        public Type ReturnedType<br />
        {<br />
            get<br />
            {<br />
                return typeof(DateTime?);<br />
            }<br />
        }</p>
<p>        public NHibernate.SqlTypes.SqlType[] SqlTypes<br />
        {<br />
            get<br />
            {<br />
                return new[] { NHibernate.NHibernateUtil.DateTime.SqlType };<br />
            }<br />
        }</p>
<p>    }<br />
}</p>
<p>And what this really does is that when you mapps your MySqlDateTime field to a DateTime property it just converts it for you without any hassle even when you are faced with a 0000-00-00 00:00:00 default value!</p>
<p>To use this in your automapping you have to tell FluentNHibernate how to use it and this can be done by creating a UserTypeConvention like this:</p>
<p>using System;<br />
using FluentNHibernate.Conventions;<br />
using Roomservice.Citybreak.Core.UserType;</p>
<p>namespace Project.Core.Infrastructure.Convention<br />
{<br />
    class MySqlDateTimeTypeConvention : UserTypeConvention&lt;MySqlDateTimeType&gt;<br />
    {<br />
        public override bool Accept(Type type)<br />
        {<br />
            return type == typeof (DateTime);<br />
        }</p>
<p>        public override void Apply(FluentNHibernate.Mapping.IProperty target)<br />
        {<br />
            target.CustomTypeIs&lt;MySqlDateTimeType&gt;();<br />
        }<br />
    }<br />
}</p>
<p>and when you configure your mapping you can add the following to your persistence model:</p>
<p>ConventionDiscovery.Setup(s =&gt; { s.Add&lt;MySqlDateTimeTypeConvention&gt;(); }</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/10/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/10/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/10/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=10&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2009/05/06/fluent-nhibernate-automapping-and-the-mysql-datetime/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
		<item>
		<title>Strange rendering in the ASP.NET AJAX TabContainer</title>
		<link>http://orbitalcoder.wordpress.com/2009/04/28/strange-rendering-in-the-asp-net-ajax-tabcontainer/</link>
		<comments>http://orbitalcoder.wordpress.com/2009/04/28/strange-rendering-in-the-asp-net-ajax-tabcontainer/#comments</comments>
		<pubDate>Tue, 28 Apr 2009 05:04:41 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[ASP.Net]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=8</guid>
		<description><![CDATA[I have used ASP.NET AJAX almost since it was first introduced and have almost never encountered any problems, so I was really perplexed when I encountered a problem with the TabContainer and the rendering of the default tabs in IE7 and IE8. The problem that I found was that the tab headers was covered at [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=8&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have used ASP.NET AJAX almost since it was first introduced and have almost never encountered any problems, so I was really perplexed when I encountered a problem with the TabContainer and the rendering of the default tabs in IE7 and IE8. The problem that I found was that the tab headers was covered at the bottom with what seemed to be an image that distorted the whole layout and covered the header text.</p>
<p>After a lot of searching I found out that it was a simple problem with the CSS that is beeing used when rendering the default XP-theme, and more precise it was this entry in the Tabs.css that caused the strange behaviour:</p>
<p><span style="color:#a31515;font-size:x-small;"><span style="color:#a31515;font-size:x-small;">.ajax__tab_tab</span></span><span style="font-size:x-small;"> {</span><span style="color:#ff0000;font-size:x-small;"><span style="color:#ff0000;font-size:x-small;">height</span></span><span style="font-size:x-small;">:</span><span style="color:#0000ff;font-size:x-small;"><span style="color:#0000ff;font-size:x-small;">13px</span></span><span style="font-size:x-small;">;</span><span style="color:#ff0000;font-size:x-small;"><span style="color:#ff0000;font-size:x-small;">padding</span></span><span style="font-size:x-small;">:</span><span style="color:#0000ff;font-size:x-small;"><span style="color:#0000ff;font-size:x-small;">4px</span></span><span style="font-size:x-small;">;</span><span style="color:#ff0000;font-size:x-small;"><span style="color:#ff0000;font-size:x-small;">margin</span></span><span style="font-size:x-small;">:</span><span style="color:#0000ff;font-size:x-small;"><span style="color:#0000ff;font-size:x-small;">0</span></span><span style="font-size:x-small;">;</span><span style="color:#ff0000;font-size:x-small;"><span style="color:#ff0000;font-size:x-small;">background</span></span><span style="font-size:x-small;">:</span><span style="color:#0000ff;font-size:x-small;"><span style="color:#0000ff;font-size:x-small;">url(&lt;%=WebResource(&#8220;AjaxControlToolkit.Tabs.tab.gif&#8221;)%&gt;)</span></span><span style="font-size:x-small;"> </span><span style="color:#0000ff;font-size:x-small;"><span style="color:#0000ff;font-size:x-small;">repeat-x</span></span><span style="font-size:x-small;">;}</p>
<p></span>the height of 13px is what is causing the problem since the tab is in fact 21px high and because of that the image in the tab is misplaced. To solve this problem you can correct this by changing the height to 21px and recompile the toolkit or just use you own style with the TabContainer.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/8/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/8/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/8/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=8&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2009/04/28/strange-rendering-in-the-asp-net-ajax-tabcontainer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
		<item>
		<title>Output caching in ASP.Net MVC</title>
		<link>http://orbitalcoder.wordpress.com/2009/04/17/output-caching-in-asp-net-mvc/</link>
		<comments>http://orbitalcoder.wordpress.com/2009/04/17/output-caching-in-asp-net-mvc/#comments</comments>
		<pubDate>Fri, 17 Apr 2009 06:52:00 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[ASP.Net MVC]]></category>
		<category><![CDATA[ASP.Net]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[MVC]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=6</guid>
		<description><![CDATA[In one of my small projects I&#8217;m using ASP.NET MVC and in one case I ended up with a situation where I wanted to use output caching, this due to extensive use of web service calls that really made a huge impact on the application (as in very long response times...) I tried to apply [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=6&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In <span id="SPELLING_ERROR_0-spelling-error">one</span> <span id="SPELLING_ERROR_1-spelling-error">of</span> <span id="SPELLING_ERROR_2-spelling-error">my</span> small <span id="SPELLING_ERROR_3-spelling-error">projects</span> <span id="SPELLING_ERROR_4-spelling-error">I&#8217;m</span> <span id="SPELLING_ERROR_5-spelling-error">using</span> <span id="SPELLING_ERROR_6-spelling-error">ASP.NET</span> <span id="SPELLING_ERROR_7-spelling-error">MVC</span> and in <span id="SPELLING_ERROR_8-spelling-error">one</span> <span id="SPELLING_ERROR_9-spelling-error">case</span> I <span id="SPELLING_ERROR_10-spelling-error">ended</span> <span id="SPELLING_ERROR_11-spelling-error">up</span> <span id="SPELLING_ERROR_12-spelling-error">with</span> a situation <span id="SPELLING_ERROR_13-spelling-error">where</span> I <span id="SPELLING_ERROR_14-spelling-error">wanted</span> <span id="SPELLING_ERROR_15-spelling-error">to</span> <span id="SPELLING_ERROR_16-spelling-error">use</span> <span id="SPELLING_ERROR_17-spelling-error">output</span> <span id="SPELLING_ERROR_18-spelling-error">caching</span>, this <span id="SPELLING_ERROR_19-spelling-error">due</span> <span id="SPELLING_ERROR_20-spelling-error">to</span> <span id="SPELLING_ERROR_21-spelling-error">extensive</span> <span id="SPELLING_ERROR_22-spelling-error">use</span> <span id="SPELLING_ERROR_23-spelling-error">of</span> <span id="SPELLING_ERROR_24-spelling-error">web</span> service <span id="SPELLING_ERROR_25-spelling-error">calls</span> <span id="SPELLING_ERROR_26-spelling-error">that</span> <span id="SPELLING_ERROR_27-spelling-error">really</span> <span id="SPELLING_ERROR_28-spelling-error">made</span> a <span id="SPELLING_ERROR_29-spelling-error">huge</span> <span id="SPELLING_ERROR_30-spelling-error">impact</span> <span id="SPELLING_ERROR_31-spelling-error">on</span> <span id="SPELLING_ERROR_32-spelling-error">the</span> <span id="SPELLING_ERROR_33-spelling-error">application</span> (as in <span id="SPELLING_ERROR_34-spelling-error">very</span> <span id="SPELLING_ERROR_35-spelling-error">long</span> <span id="SPELLING_ERROR_36-spelling-error">response</span> <span id="SPELLING_ERROR_37-spelling-error">times.</span>..)</p>
<p>I <span id="SPELLING_ERROR_38-spelling-error">tried</span> <span id="SPELLING_ERROR_39-spelling-error">to</span> <span id="SPELLING_ERROR_40-spelling-error">apply</span> <span id="SPELLING_ERROR_41-spelling-error">the</span> <span id="SPELLING_ERROR_42-spelling-error">ordinary</span> <span id="SPELLING_ERROR_43-spelling-error">output</span> <span id="SPELLING_ERROR_44-spelling-error">caching</span> as <span id="SPELLING_ERROR_45-spelling-error">I&#8217;m</span> <span id="SPELLING_ERROR_46-spelling-error">used</span> <span id="SPELLING_ERROR_47-spelling-error">to</span> in <span id="SPELLING_ERROR_48-spelling-error">ASP.NET</span> <span id="SPELLING_ERROR_49-spelling-error">but</span> <span id="SPELLING_ERROR_50-spelling-error">found</span> <span id="SPELLING_ERROR_51-spelling-error">out</span> <span id="SPELLING_ERROR_52-spelling-error">that</span> <span id="SPELLING_ERROR_53-spelling-error">it</span> <span id="SPELLING_ERROR_54-spelling-error">wasn&#8217;t</span> <span id="SPELLING_ERROR_55-spelling-error">really</span> <span id="SPELLING_ERROR_56-spelling-error">working</span> as I <span id="SPELLING_ERROR_57-spelling-error">wanted</span> and in <span id="SPELLING_ERROR_58-spelling-error">this</span> special <span id="SPELLING_ERROR_59-spelling-error">case</span> I <span id="SPELLING_ERROR_60-spelling-error">also</span> <span id="SPELLING_ERROR_61-spelling-error">wanted</span> <span id="SPELLING_ERROR_62-spelling-error">to</span> <span id="SPELLING_ERROR_63-spelling-error">use</span> <span id="SPELLING_ERROR_64-spelling-error">partial</span> <span id="SPELLING_ERROR_65-spelling-error">content</span> <span id="SPELLING_ERROR_66-spelling-error">rendering</span> in <span id="SPELLING_ERROR_67-spelling-error">my</span> <span id="SPELLING_ERROR_68-spelling-error">application</span>, <span id="SPELLING_ERROR_69-spelling-error">fortunatelly</span> I <span id="SPELLING_ERROR_70-spelling-error">found</span> an excellent blog post by <span id="SPELLING_ERROR_71-spelling-error">Steve</span> <span id="SPELLING_ERROR_72-spelling-error">Sanderson</span> <span id="SPELLING_ERROR_73-spelling-error">which</span> <span id="SPELLING_ERROR_74-spelling-error">explained </span><span id="SPELLING_ERROR_75-spelling-error">exactly</span> <span id="SPELLING_ERROR_76-spelling-error">what</span> I <span id="SPELLING_ERROR_77-spelling-error">needed</span>, <span id="SPELLING_ERROR_78-spelling-error">you</span> <span id="SPELLING_ERROR_79-spelling-error">can</span> <span id="SPELLING_ERROR_80-spelling-error">find</span> <span id="SPELLING_ERROR_81-spelling-error">the</span> blog post <span id="SPELLING_ERROR_82-spelling-error">here</span>:</p>
<p><a href="http://blog.codeville.net/2008/10/15/partial-output-caching-in-aspnet-mvc/"><span style="color:#336699;">http://blog.codeville.net/2008/10/15/partial-output-caching-in-aspnet-mvc/</span></a></p>
<p><span id="SPELLING_ERROR_83-spelling-error">Thank</span> <span id="SPELLING_ERROR_84-spelling-error">you</span> <span id="SPELLING_ERROR_85-spelling-error">Steve</span>, <span id="SPELLING_ERROR_86-spelling-error">you</span> <span id="SPELLING_ERROR_87-spelling-error">really</span> saved <span id="SPELLING_ERROR_88-spelling-error">my</span> <span id="SPELLING_ERROR_89-spelling-error">day</span>!</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/6/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/6/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/6/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=6&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2009/04/17/output-caching-in-asp-net-mvc/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
		<item>
		<title>NHibernate and MySql</title>
		<link>http://orbitalcoder.wordpress.com/2008/12/17/nhibernate-and-mysql/</link>
		<comments>http://orbitalcoder.wordpress.com/2008/12/17/nhibernate-and-mysql/#comments</comments>
		<pubDate>Wed, 17 Dec 2008 08:27:34 +0000</pubDate>
		<dc:creator>valuja</dc:creator>
				<category><![CDATA[MySql]]></category>
		<category><![CDATA[NHibernate]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[ORM]]></category>

		<guid isPermaLink="false">http://orbitalcoder.wordpress.com/?p=3</guid>
		<description><![CDATA[Earlier this year I posted an article on CodeProject about how to use NHibernate and MySql, just wanted to mention this and to post a link to the article here: http://www.codeproject.com/KB/dotnet/mysqlnhibernate.aspx<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=3&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Earlier this year I posted an article on <span id="SPELLING_ERROR_0-spelling-error">CodeProject</span> about how to use <span id="SPELLING_ERROR_1-spelling-error">NHibernate</span> and <span id="SPELLING_ERROR_2-spelling-error">MySql</span>, just wanted to mention this and to post a link to the article here:</p>
<p><a class="alignleft" title="NHibernate and MySql" href="http://www.codeproject.com/KB/dotnet/mysqlnhibernate.aspx" target="_blank"><span style="color:#336699;">http://www.codeproject.com/KB/dotnet/mysqlnhibernate.aspx</span></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/orbitalcoder.wordpress.com/3/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/orbitalcoder.wordpress.com/3/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/orbitalcoder.wordpress.com/3/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=orbitalcoder.wordpress.com&amp;blog=9056695&amp;post=3&amp;subd=orbitalcoder&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://orbitalcoder.wordpress.com/2008/12/17/nhibernate-and-mysql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/c1572862db57c8998cb0a7005ad535a9?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">valuja</media:title>
		</media:content>
	</item>
	</channel>
</rss>
