Object to System.String implicit conversion
<p>I have a question regarding type conversion in C#.
<pre><code>
Object data_obj = "test";
string data_str;
data_str = data_obj;<br>
</pre></code></p>

<p>this produces an error claiming no implicit conversion exists. Now, this is, at least for me, a little bit unintuitive, since <code>Console.WriteLine("type{0}",data_obj.GetType())</code> produces  <code>System.String</code>, but then again, i am really new at C#.</p>

<p>Now, getting past this, i would like to cast to the type of the data stored in <code>data_obj</code>, without having to <code>switch</code> and selecting the type manually. </p>

<p>So, basically, what i am asking is: is there a way to define an implicit conversion from <code>System.Object</code> to <code>System.String</code>, <code>System.Decimal</code>, etc.</p>

<p>Context:</p>

<p>I am reading from an ODBC connection to an SQLServer database and trying to pump those rows into an Oracle Database. Now, the correspondence of SQLServer and Oracle rows have to be defined. Now, i read the data from the SQLServer table with no problem whatsoever, and i store it in a <code>List&lt;Dictionary&lt;string,Object&gt;&gt;</code> (i know, storing the rows seem wrong, but design requirements, what can you do). 
The insertion part is where i am having problems with the insertion. I basically loop (with a foreach) through the elements of the list and insert them row by row. It is here where i need to determine the type of the data stored in the <code>Object</code>.</p>

<p>Edit: Including a bit more detail.</p>
