<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-5866889671513465915</id><updated>2017-06-01T23:11:08.872-07:00</updated><category term="C#"/><title type='text'>Dotnet Rocks</title><subtitle type='html'>Pearls in .Net</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Anand B</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>5</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-5866889671513465915.post-4349108014880110275</id><published>2010-08-16T23:34:00.000-07:00</published><updated>2010-08-16T23:39:24.153-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><title type='text'>Formatting the Date by using String.Format() Method</title><content type='html'>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;custom format specifiers &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;y (year), M (month), d (day), h (hour 12), H (hour 24), m (minute), s (second), f (second fraction), F (second fraction, trailing zeroes are trimmed), t (P.M or A.M) and z (time zone). &lt;/p&gt;  &lt;p&gt;// create date time 2008-03-09 16:05:07.123   &lt;br /&gt;DateTime dt = new DateTime(2008, 3, 9, 16, 5, 7, 123);&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;String.Format(&amp;quot;{0:y yy yyy yyyy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;8 08 008 2008&amp;quot; year    &lt;br /&gt;String.Format(&amp;quot;{0:M MM MMM MMMM}&amp;quot;, dt);&amp;#160; // &amp;quot;3 03 Mar March&amp;quot; month    &lt;br /&gt;String.Format(&amp;quot;{0:d dd ddd dddd}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;9 09 Sun Sunday&amp;quot; day    &lt;br /&gt;String.Format(&amp;quot;{0:h hh H HH}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;4 04 16 16&amp;quot; hour 12/24    &lt;br /&gt;String.Format(&amp;quot;{0:m mm}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;5 05&amp;quot; minute    &lt;br /&gt;String.Format(&amp;quot;{0:s ss}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;7 07&amp;quot; second    &lt;br /&gt;String.Format(&amp;quot;{0:f ff fff ffff}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;1 12 123 1230&amp;quot; sec.fraction    &lt;br /&gt;String.Format(&amp;quot;{0:F FF FFF FFFF}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;1 12 123 123&amp;quot; without zeroes    &lt;br /&gt;String.Format(&amp;quot;{0:t tt}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;P PM&amp;quot; A.M. or P.M.    &lt;br /&gt;String.Format(&amp;quot;{0:z zz zzz}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;-6 -06 -06:00&amp;quot; time zone &lt;/p&gt;  &lt;p&gt;String.Format(&amp;quot;{0:d/M/yyyy HH:mm:ss}&amp;quot;, dt); // &amp;quot;9/3/2008 16:05:07&amp;quot; - english (en-US) &lt;/p&gt;  &lt;p&gt;examples of custom date and time formatting: &lt;/p&gt;  &lt;p&gt;// month/day numbers without/with leading zeroes   &lt;br /&gt;String.Format(&amp;quot;{0:M/d/yyyy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;3/9/2008&amp;quot;    &lt;br /&gt;String.Format(&amp;quot;{0:MM/dd/yyyy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;03/09/2008&amp;quot;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;// day/month names    &lt;br /&gt;String.Format(&amp;quot;{0:ddd, MMM d, yyyy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;Sun, Mar 9, 2008&amp;quot;    &lt;br /&gt;String.Format(&amp;quot;{0:dddd, MMMM d, yyyy}&amp;quot;, dt);&amp;#160;&amp;#160; // &amp;quot;Sunday, March 9, 2008&amp;quot;&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;// two/four digit year    &lt;br /&gt;String.Format(&amp;quot;{0:MM/dd/yy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;03/09/08&amp;quot;    &lt;br /&gt;String.Format(&amp;quot;{0:MM/dd/yyyy}&amp;quot;, dt);&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; // &amp;quot;03/09/2008&amp;quot;&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Standard DateTime Formatting&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;   &lt;table border=&quot;0&quot; cellpadding=&quot;0&quot; width=&quot;545&quot;&gt;&lt;tbody&gt;       &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;&lt;b&gt;Specifier&lt;/b&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p&gt;&lt;b&gt;DateTimeFormatInfo property&lt;/b&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p&gt;&lt;b&gt;Pattern value (for en-US culture)&lt;/b&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;t&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;ShortTimePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;h:mm tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;d&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;ShortDatePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;M/d/yyyy&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;T&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;LongTimePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;h:mm:ss tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;D&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;LongDatePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;dddd, MMMM dd, yyyy&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;f&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;&lt;i&gt;(combination of D and t)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;dddd, MMMM dd, yyyy h:mm tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;F&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;FullDateTimePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;dddd, MMMM dd, yyyy h:mm:ss tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;g&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;&lt;i&gt;(combination of d and t)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;M/d/yyyy h:mm tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;G&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;&lt;i&gt;(combination of d and T)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;M/d/yyyy h:mm:ss tt&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;m, M&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;MonthDayPattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;MMMM dd&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;y, Y&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;YearMonthPattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;MMMM, yyyy&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;r, R&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;RFC1123Pattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;ddd, dd MMM yyyy HH&#39;:&#39;mm&#39;:&#39;ss &#39;GMT&#39; &lt;i&gt;(*)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;s&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p align=&quot;left&quot;&gt;SortableDateTi­mePattern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;yyyy&#39;-&#39;MM&#39;-&#39;dd&#39;T&#39;HH&#39;:&#39;mm&#39;:&#39;ss &lt;i&gt;(*)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;           &lt;p&gt;u&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;           &lt;p&gt;UniversalSorta­bleDateTimePat­tern&lt;/p&gt;         &lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;yyyy&#39;-&#39;MM&#39;-&#39;dd HH&#39;:&#39;mm&#39;:&#39;ss&#39;Z&#39; &lt;i&gt;(*)&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;        &lt;tr&gt;         &lt;td&gt;&amp;#160;&lt;/td&gt;          &lt;td width=&quot;208&quot;&gt;&amp;#160;&lt;/td&gt;          &lt;td width=&quot;260&quot;&gt;           &lt;p align=&quot;left&quot;&gt;&lt;i&gt;(*) = culture independent&lt;/i&gt;&lt;/p&gt;         &lt;/td&gt;       &lt;/tr&gt;     &lt;/tbody&gt;&lt;/table&gt;   &lt;b&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;Examples:&lt;/p&gt;  &lt;p&gt;String.Format(&amp;quot;{0:d}&amp;quot;, dt); // &amp;quot;3/9/2008&amp;quot; ShortDate   &lt;br /&gt;String.Format(&amp;quot;{0:T}&amp;quot;, dt); // &amp;quot;4:05:07 PM&amp;quot; LongTime    &lt;br /&gt;String.Format(&amp;quot;{0:D}&amp;quot;, dt); // &amp;quot;Sunday, March 09, 2008&amp;quot; LongDate    &lt;br /&gt;String.Format(&amp;quot;{0:f}&amp;quot;, dt); // &amp;quot;Sunday, March 09, 2008 4:05 PM&amp;quot; LongDate+ShortTime    &lt;br /&gt;String.Format(&amp;quot;{0:F}&amp;quot;, dt); // &amp;quot;Sunday, March 09, 2008 4:05:07 PM&amp;quot; FullDateTime    &lt;br /&gt;String.Format(&amp;quot;{0:g}&amp;quot;, dt); // &amp;quot;3/9/2008 4:05 PM&amp;quot; ShortDate+ShortTime    &lt;br /&gt;String.Format(&amp;quot;{0:G}&amp;quot;, dt); // &amp;quot;3/9/2008 4:05:07 PM&amp;quot; ShortDate+LongTime    &lt;br /&gt;String.Format(&amp;quot;{0:m}&amp;quot;, dt); // &amp;quot;March 09&amp;quot; MonthDay    &lt;br /&gt;String.Format(&amp;quot;{0:y}&amp;quot;, dt); // &amp;quot;March, 2008&amp;quot; YearMonth    &lt;br /&gt;String.Format(&amp;quot;{0:r}&amp;quot;, dt); // &amp;quot;Sun, 09 Mar 2008 16:05:07 GMT&amp;quot; RFC1123    &lt;br /&gt;String.Format(&amp;quot;{0:s}&amp;quot;, dt); // &amp;quot;2008-03-09T16:05:07&amp;quot; SortableDateTime    &lt;br /&gt;String.Format(&amp;quot;{0:u}&amp;quot;, dt); // &amp;quot;2008-03-09 16:05:07Z&amp;quot; UniversalSortableDateTime &lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/4349108014880110275/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5866889671513465915&amp;postID=4349108014880110275' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4349108014880110275'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4349108014880110275'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/2010/08/formatting-date-by-using-stringformat_16.html' title='Formatting the Date by using String.Format() Method'/><author><name>Anand B</name><uri>https://plus.google.com/113851225265109309452</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1"/><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD"/></entry><entry><id>tag:blogger.com,1999:blog-5866889671513465915.post-3841643565640991796</id><published>2010-03-18T22:57:00.001-07:00</published><updated>2010-03-18T22:58:21.458-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><title type='text'>Copy Constructor</title><content type='html'>&lt;p&gt;C# does not provide a copy constructor by itself. But, You can create a new object and want to copy the values from an existing object to a newly created object,&lt;/p&gt;  &lt;p&gt;Example,&lt;/p&gt;  &lt;p&gt;class Student   &lt;br /&gt;{    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160; private string name; &lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Instance constructor&lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public Student(string name)     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; this.name = name;`      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt;    &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Copy constructor.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public Student(Student student)     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; this.name = student.name;      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; } &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public string Name      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; get       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; return name;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; set       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; name = value;       &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }      &lt;br /&gt;} &lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;class Final   &lt;br /&gt;{    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160; static void Main()    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Create a new object of Student Class   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Student student = new Student (&amp;quot;A&amp;quot;);&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; /// Create a new object , and then copy the class “Student” to “NewStudent”   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Student NewStudent = new Student (student);&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; student.Name = &amp;quot;B&amp;quot;;    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; System.Console.WriteLine(&amp;quot;The new student&#39;s name is {0}&amp;quot;, NewStudent.Name);    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }    &lt;br /&gt;}&lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/3841643565640991796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5866889671513465915&amp;postID=3841643565640991796' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/3841643565640991796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/3841643565640991796'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/2010/03/copy-constructor.html' title='Copy Constructor'/><author><name>Anand B</name><uri>https://plus.google.com/113851225265109309452</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1"/><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD"/></entry><entry><id>tag:blogger.com,1999:blog-5866889671513465915.post-2516917475218770603</id><published>2010-03-09T19:35:00.001-08:00</published><updated>2010-03-11T20:38:23.931-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><title type='text'>Serialization</title><content type='html'>&lt;p&gt;When we write an application the data is stored in the memory. Think you want that data to be stored elsewhere or transport it from one process into another process or to some other location. You could transfer or store the data as binary data / xml / and some proprietary format.&lt;/p&gt;  &lt;p&gt;Serialization is the process of converting an object /many objects into a stream of bytes.&lt;/p&gt;  &lt;p&gt;De-serialization is the process of converting a stream of bytes back into its “live” objects in memory. But, it’s a difficult process than serialization. Since the structure of the object is not known to the user.&lt;/p&gt;  &lt;p&gt;Serialization and De - Serialization are typically used to:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. Transmit objects across a network or application boundary.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;2. Store representations of objects within a file or database.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;.net provides rich support for serialization and De-serialization.&lt;/p&gt;  &lt;p&gt;Here are some of the examples: -&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. An application state can easily be saved in a disk file or database and then restored the next time the application is run.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;2. A set of objects can easily be copied to the system’s clipboard and then pasted into the same or another application.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;3. A set of objects can be cloned and set aside as a backup while a user manipulates the main set of objects.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;4. A set of objects can easily be sent over the network to a process running on another machine.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;5. When an object is serialized, it is quite easy to process the data in many useful ways like Compressing and encrypting the data.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;strong&gt;Serialization Vs Persistence&lt;/strong&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. Terms aren’t identical in .NET&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; a. Serialization refers to transforming an object or group of objects into a stream of&amp;#160;&amp;#160; bytes that can be saved or moved.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; i. No specific storage implied by Serialization.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; b. Persistence refers to saving data to permanent storage (Disk Storage/Database).&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;2. We can serialize an object to a memory stream.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; a. And then persist the MemoryStream to a disk file.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;b&gt;.Net Framework and Serialization&lt;/b&gt;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160; .net framework includes support for serializing all the base types, which also include data structures.&lt;/p&gt;  &lt;p&gt;&lt;b&gt;Introduction to formatter objects      &lt;br /&gt;&lt;/b&gt;Formatters are mainly used to convert objects into different format of data.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;1. Formatters accept object / objects and serialize to a stream of bytes (implement IFormatter).&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;2. Different formatters provide different results.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;3. There are two built-in formatters:&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; a. BinaryFormatter: takes the input and emits all bytes of object(s) in a continuous stream.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; b. SoapFormatter: serializes data into human readable XML format, using SOAP specification. &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; i. This is slightly slower and certainly results in larger output. I.e. for each byte of information the process results in many bytes of data. &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; c. To use this SoapFormatter, we need to add reference to “Serialization.Formatters.SOAP.dll”.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; d. To serialize a object :&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; i. Create a new IFormatter object (i.e. Binary/ soap formatter).&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ii. Call IFormatter objects serialize method, which takes a reference to a stream object, and the object to be serialized.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; iii. Stream object can be anything that derives from System.IO.Stream (Memory, File, Network and any other).&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; iv. The formatter will return the stream of bytes as of data of any format.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; e. .Net formatters can &lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; i. Handle nested and circular references (i.e. first object containing references to second objects and the second object have references to the first object).&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ii. Handle public and private member of classes.&lt;/p&gt; &lt;/blockquote&gt;  &lt;blockquote&gt;   &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; iii. Also can handle multiple references to a single object. Complex objects that as multiple references to a single object. It doesn’t send out serialized output. but multiple copies it sends out multiple references/pointers to that single object.&lt;/p&gt;&lt;/blockquote&gt;  </content><link rel='replies' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/2516917475218770603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5866889671513465915&amp;postID=2516917475218770603' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/2516917475218770603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/2516917475218770603'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/2010/03/serialization.html' title='Serialization'/><author><name>Anand B</name><uri>https://plus.google.com/113851225265109309452</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><thr:total>1</thr:total><gd:extendedProperty name="commentSource" value="1"/><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD"/></entry><entry><id>tag:blogger.com,1999:blog-5866889671513465915.post-4685929255650321416</id><published>2010-03-05T12:29:00.001-08:00</published><updated>2010-03-09T19:49:14.137-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="C#"/><title type='text'>Use const and readonly</title><content type='html'>&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;Both &lt;strong&gt;const&lt;/strong&gt; and &lt;strong&gt;readonly&lt;/strong&gt; are used to define data that does not change.&lt;/p&gt;  &lt;p&gt;Differences :&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;strong&gt;const &lt;/strong&gt;must be defined at declaration and the value cannot be changed once it is assigned, it implies that they belong to the type as static fields.&lt;/p&gt;    &lt;p&gt;&lt;strong&gt;readonly &lt;/strong&gt;fields&lt;strong&gt; &lt;/strong&gt;can be set at declaration or in the constructor and nowhere else.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Example :&lt;/p&gt;  &lt;p&gt;public class Test    &lt;br /&gt;{     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; private const string Name = “Test”;     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; private readonly int ver;&lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public Test()    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ver = 10;//Ok     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; public void Function()    &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; {     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; ver = 13;//Error!     &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; }     &lt;br /&gt;}&lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/4685929255650321416/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5866889671513465915&amp;postID=4685929255650321416' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4685929255650321416'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4685929255650321416'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/2010/03/use-const-and-readonly.html' title='Use const and readonly'/><author><name>Anand B</name><uri>https://plus.google.com/113851225265109309452</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1"/><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD"/></entry><entry><id>tag:blogger.com,1999:blog-5866889671513465915.post-4570704711877249217</id><published>2010-02-23T01:22:00.000-08:00</published><updated>2010-03-10T03:37:31.248-08:00</updated><title type='text'>First Post</title><content type='html'>&lt;p&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;Hai Every one.&lt;/span&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;I am Basically a .Net developer.&lt;/span&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;This is my first post.&lt;/span&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;From now on i will be posting my view towards Microsoft Technologies.&lt;/span&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;Any Feedbacks feel free to mail me.&lt;/span&gt;    &lt;br /&gt;    &lt;br /&gt;&lt;span style=&quot;font-family: &amp;quot;Verdana&amp;quot;, sans-serif&quot;&gt;ENJOY READING &lt;/span&gt;&lt;/p&gt;  </content><link rel='replies' type='application/atom+xml' href='http://dotnet-rocks.blogspot.com/feeds/4570704711877249217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=5866889671513465915&amp;postID=4570704711877249217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4570704711877249217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/5866889671513465915/posts/default/4570704711877249217'/><link rel='alternate' type='text/html' href='http://dotnet-rocks.blogspot.com/2010/02/hai-every-one.html' title='First Post'/><author><name>Anand B</name><uri>https://plus.google.com/113851225265109309452</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='//lh5.googleusercontent.com/-Yfu8WsfX9Cs/AAAAAAAAAAI/AAAAAAAADbA/gdspKHvlLZk/s512-c/photo.jpg'/></author><thr:total>0</thr:total><gd:extendedProperty name="commentSource" value="1"/><gd:extendedProperty name="commentModerationMode" value="FILTERED_POSTMOD"/></entry></feed>