<?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: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-3735690207062512224</id><updated>2012-02-16T00:00:21.592-08:00</updated><category term='Jagannath Karmakar'/><title type='text'>DotnetHorizon</title><subtitle type='html'>This is very helpful blog for new .NET Developer Created by Jagannath Karmakar.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-2647813528495082392</id><published>2009-12-24T02:24:00.000-08:00</published><updated>2009-12-24T02:25:21.525-08:00</updated><title type='text'>All Mobile Gprs Settings</title><content type='html'>GPRS setting for all mobile including Chinese&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Airtel Live&lt;br /&gt;&lt;br /&gt;Profile Neme: Live&lt;br /&gt;Homepage: http://live.airtelworld.com&lt;br /&gt;Username: blank&lt;br /&gt;Password: blank&lt;br /&gt;APN: airtelfun.com&lt;br /&gt;Proxy and Server Adress or IP: 100.1.200.99&lt;br /&gt;Port: 8080&lt;br /&gt;Data bearer - GPRS or Packet Data.&lt;br /&gt;Authentication: normal&lt;br /&gt;&lt;br /&gt;Airtel GPRS or Mobile Office&lt;br /&gt;Profile Neme: mo&lt;br /&gt;Homepage: http://google.com&lt;br /&gt;Username: blank&lt;br /&gt;Password: blank&lt;br /&gt;APN: airtelgprs.com&lt;br /&gt;Proxy and Server Adress or IP: 202.56.231.117&lt;br /&gt;Port: 8080&lt;br /&gt;Data bearer - GPRS or Packet Data.&lt;br /&gt;Authentication: normal&lt;br /&gt;&lt;br /&gt;IDEA&lt;br /&gt;Profile Neme:Idea&lt;br /&gt;Homepage: http://wap.ideafresh.com&lt;br /&gt;Username: blank&lt;br /&gt;Password: blank&lt;br /&gt;APN: imis&lt;br /&gt;Proxy and Server Adress or IP: 10.4.42.45&lt;br /&gt;Port: 8080&lt;br /&gt;Data bearer - GPRS or Packet Data.&lt;br /&gt;Authentication: normal&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Smart SMARTWAP:&lt;br /&gt;&lt;br /&gt;* Account name : SMARTWAP&lt;br /&gt;* Access point name: SMARTWAP&lt;br /&gt;* Home page: http://wap.rworld.co.in/gsm/index.wml&lt;br /&gt;* Wapgateway proxy IP address: 97.253.29.199&lt;br /&gt;* Port: 8080&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Smart SMATRNET:&lt;br /&gt;&lt;br /&gt;* Account name: SMARTNET&lt;br /&gt;* Access point name: SMARTNET&lt;br /&gt;* Home page: http://www.google.co.in&lt;br /&gt;* Wapgateway proxy IP address: 97.253.29.199&lt;br /&gt;* Port: 8080&lt;br /&gt;&lt;br /&gt;Smart MMS:&lt;br /&gt;&lt;br /&gt;* Account name: RTLMMS&lt;br /&gt;* Access point name:MMS&lt;br /&gt;* Homepage: http://10.114.0.5/mms/&lt;br /&gt;* Wapgateway IP: 10.114.0.13&lt;br /&gt;* Port: 9401&lt;br /&gt;&lt;br /&gt;Vodafone live Settings:&lt;br /&gt;&lt;br /&gt;Account Name - Vodafone Live&lt;br /&gt;User Name - leave Blank&lt;br /&gt;Password - leave Blank&lt;br /&gt;Proxy - Enabled/yes&lt;br /&gt;Access Point Name - portalnmms&lt;br /&gt;Proxy - Enabled/yes.&lt;br /&gt;Proxy and Server address - 010.010.001.100&lt;br /&gt;Proxy and Server Port - 9401 or 8080&lt;br /&gt;Homepage - http://live.vodafone.in&lt;br /&gt;Authentication Type - Normal&lt;br /&gt;&lt;br /&gt;BSNL gprs Settings:&lt;br /&gt;&lt;br /&gt;Account Name - bsnlwap&lt;br /&gt;Username - leave blank&lt;br /&gt;Password - leave blank&lt;br /&gt;Proxy - Enabled/yes&lt;br /&gt;Homepage - http://wap.cellone.in&lt;br /&gt;Proxy and Server address - 010.132.194.196&lt;br /&gt;Proxy and Server Port - 8080&lt;br /&gt;Acces Point Name - wapnorth.cellone.in&lt;br /&gt;Data bearer - GPRS/ Packetdata&lt;br /&gt;Authentication Type - Normal&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Need Aircel GPRS/Internet free Setting for Chinese Mobile:&lt;br /&gt;&lt;br /&gt;Using Internet through Mobile:&lt;br /&gt;* Account name: Aircel Online&lt;br /&gt;* Home page: http://myaircel.com&lt;br /&gt;* Access point name: aircelwap&lt;br /&gt;* Wapgateway IP: 172.17.83.69&lt;br /&gt;* Port: 8080&lt;br /&gt;*Username - leave blank&lt;br /&gt;*Password - leave blank&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Using Internet through Mobile:&lt;br /&gt;* Account name: Aircel Online&lt;br /&gt;* Home page: http://www.google.com&lt;br /&gt;* Access point name: aircelweb&lt;br /&gt;* Wapgateway IP: leave blank&lt;br /&gt;* Port: leave blank&lt;br /&gt;*Username - leave blank&lt;br /&gt;*Password - leave blank&lt;br /&gt;&lt;br /&gt;Spice&lt;br /&gt;&lt;br /&gt;* Account name: Spice wap&lt;br /&gt;* Home page: http://wap.spicetele.com&lt;br /&gt;*Dial up number: 6830&lt;br /&gt;* Wapgateway IP: 10.200.200.3&lt;br /&gt;* Port: 8080&lt;br /&gt;* Carrier type: Data GSM&lt;br /&gt;*Username - +91 followed by users no.&lt;br /&gt;*Password - spice&lt;br /&gt;&lt;br /&gt;BPL&lt;br /&gt;Account Name - BPL WAP&lt;br /&gt;&lt;br /&gt;   1. Username - leave blank&lt;br /&gt;   2. Password - leave blank&lt;br /&gt;   3. Proxy - Enabled/yes&lt;br /&gt;   4. Homepage - http://wap.mizone.bplmobile.com&lt;br /&gt;   5. Proxy and Server address - 10.0.0.10&lt;br /&gt;   6. Proxy and Server Port - 8080&lt;br /&gt;   7. Acces Point Name - mizone&lt;br /&gt;   8. Data bearer - GPRS/ Packetdata&lt;br /&gt;   9. Authentication Type - Normal&lt;br /&gt;&lt;br /&gt;Tata Docomo&lt;br /&gt; Account Name - Tata Docomo Divein&lt;br /&gt;&lt;br /&gt;   1. Username - leave blank&lt;br /&gt;   2. Password - leave blank&lt;br /&gt;   3. Proxy - Enabled/yes&lt;br /&gt;   4. Homepage - http://divein.tatadocomo.com&lt;br /&gt;   5. Proxy and Server address - 010.124.094.007&lt;br /&gt;   6. Proxy and Server Port - 8080&lt;br /&gt;   7. Acces Point Name - TATA.DOCOMO.DIVE.IN&lt;br /&gt;   8. Data bearer - GPRS/ Packetdata&lt;br /&gt;   9. Authentication Type - Normal&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-2647813528495082392?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/2647813528495082392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=2647813528495082392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/2647813528495082392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/2647813528495082392'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/12/all-mobile-gprs-settings.html' title='All Mobile Gprs Settings'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-5803958534178265499</id><published>2009-11-24T02:32:00.000-08:00</published><updated>2009-11-24T02:33:38.495-08:00</updated><title type='text'>Important New Concepts in WPF</title><content type='html'>&lt;table style="width: 20px; height: 28px;" border="0" cellpadding="5" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td align="right"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td class="bodycopy"&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;p&gt;&lt;span class="bodycopy"&gt;&lt;h3&gt;&lt;a name="more"&gt;Logical and Visual Trees&lt;/a&gt;&lt;/h3&gt;  &lt;p&gt;&lt;a name="more"&gt;XAML is natural for representing a user interface because of its hierarchical nature. In WPF, user interfaces are constructed from a tree of objects known as a &lt;i&gt;logical tree&lt;/i&gt;.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;Listing 3.1 defines the beginnings of a hypothetical About dialog, using a &lt;tt&gt;Window&lt;/tt&gt; as the root of the logical tree. The &lt;tt&gt;Window&lt;/tt&gt; has a &lt;tt&gt;StackPanel&lt;/tt&gt; child element (described in Chapter 6, "Layout with Panels") containing a few simple controls plus another &lt;tt&gt;StackPanel&lt;/tt&gt; which contains &lt;tt&gt;Buttons&lt;/tt&gt;.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;&lt;b&gt;LISTING 3.1&lt;/b&gt; A Simple About Dialog in XAML&lt;/a&gt;&lt;/p&gt;  &lt;pre&gt;&lt;a name="more"&gt;&lt;Window xmlns=&lt;br /&gt;  "http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;br /&gt;  Title="About WPF Unleashed" SizeToContent="WidthAndHeight"&lt;br /&gt;  Background="OrangeRed"&gt;&lt;br /&gt;  &lt;stackpanel&gt;&lt;br /&gt;     &lt;label fontweight="Bold" fontsize="20" foreground="White"&gt;&lt;br /&gt;        WPF Unleashed (Version 3.0)&lt;br /&gt;     &lt;/label&gt;&lt;br /&gt;     &lt;label&gt;© 2006 SAMS Publishing&lt;/label&gt;&lt;br /&gt;     &lt;label&gt;Installed Chapters:&lt;/label&gt;&lt;br /&gt;     &lt;listbox&gt;&lt;br /&gt;        &lt;listboxitem&gt;Chapter 1&lt;/listboxitem&gt;&lt;br /&gt;        &lt;listboxitem&gt;Chapter 2&lt;/listboxitem&gt;&lt;br /&gt;     &lt;/listbox&gt;&lt;br /&gt;     &lt;StackPanel Orientation="Horizontal"&lt;br /&gt;                 HorizontalAlignment="Center"&gt;&lt;br /&gt;        &lt;button minwidth="75" margin="10"&gt;Help&lt;/button&gt;&lt;br /&gt;        &lt;button minwidth="75" margin="10"&gt;OK&lt;/button&gt;&lt;br /&gt;     &lt;/stackpanel&gt;&lt;br /&gt;     &lt;statusbar&gt;You have successfully registered &lt;span class="codeKeyword"&gt;this&lt;/span&gt;&lt;br /&gt;                product.&lt;/statusbar&gt;&lt;br /&gt;  &lt;/stackpanel&gt;&lt;br /&gt;&lt;/window&gt;&lt;br /&gt;&lt;/a&gt;&lt;/pre&gt;  &lt;p&gt;&lt;a name="more"&gt;Figure 3.1 shows the rendered dialog (which you can easily produce by pasting the content of Listing 3.1 into a tool such as XamlPad), and Figure 3.2 illustrates the logical tree for this dialog.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;&lt;img src="http://www.codeguru.com/dbfiles/get_image.php?id=13347&amp;amp;lbl=WPF01_GIF&amp;amp;ds=20070227" height="194" width="262" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;a name="more"&gt;&lt;b&gt;FIGURE 3.1&lt;/b&gt; The rendered dialog from Listing 3.1.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;Note that a logical tree exists even for WPF user interfaces that aren't created in XAML. Listing 3.1 could be implemented entirely in procedural code and the logical tree would be identical.&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;The logical tree concept is straightforward, but why should you care about it? Because just about every aspect of WPF (properties, events, resources, and so on) has behavior tied to the logical tree. For example, property values are sometimes propagated down the tree to child elements automatically, and raised events can travel up or down the tree. Both of these behaviors are discussed later in this chapter.&lt;/a&gt;&lt;/p&gt;  &lt;a name="more"&gt;A similar concept to the logical tree is the &lt;i&gt;visual tree&lt;/i&gt;. A visual tree is basically an expansion of a logical tree, in which nodes are broken down into their core visual components. Rather than leaving each element as a "black box," a visual tree exposes the visual implementation details. For example, although a &lt;tt&gt;ListBox&lt;/tt&gt; is logically a single control, its default visual representation is composed of more primitive WPF elements: a &lt;tt&gt;Border&lt;/tt&gt;, two &lt;tt&gt;ScrollBars&lt;/tt&gt;, and more.&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;a name="more"&gt;&lt;img src="http://www.codeguru.com/dbfiles/get_image.php?id=13347&amp;amp;lbl=WPF02_GIF&amp;amp;ds=20070227" height="230.19801980198" width="500" /&gt;&lt;br /&gt;(&lt;/a&gt;&lt;a href="http://www.codeguru.com/dbfiles/get_image.php?id=13347&amp;amp;lbl=WPF02_GIF&amp;amp;ds=20070227" target="_blank"&gt;Full Size Image&lt;/a&gt;)&lt;/p&gt; &lt;p&gt;&lt;b&gt;FIGURE 3.2&lt;/b&gt; The logical tree for Listing 3.1.&lt;/p&gt;  &lt;p&gt;Not all logical tree nodes appear in the visual tree; only the elements that derive from &lt;tt&gt;System.Windows.Media.Visual or System.Windows.Media.Visual3D&lt;/tt&gt; are included. Other elements (and simple string content, as in Listing 3.1) are not included because they don't have inherent rendering behavior of their own.&lt;/p&gt;  &lt;p&gt;Figure 3.3 illustrates the default visual tree for Listing 3.1 when running on Windows Vista with the Aero theme. This diagram exposes some inner components of the UI that are currently invisible, such as the &lt;tt&gt;ListBox&lt;/tt&gt;'s two &lt;tt&gt;ScrollBars&lt;/tt&gt; and each &lt;tt&gt;Label&lt;/tt&gt;'s &lt;tt&gt;Border&lt;/tt&gt;. It also reveals that &lt;tt&gt;Button&lt;/tt&gt;, &lt;tt&gt;Label&lt;/tt&gt;, and &lt;tt&gt;ListBoxItem&lt;/tt&gt; are all comprised of the same elements, except &lt;tt&gt;Button&lt;/tt&gt; uses an obscure &lt;tt&gt;ButtonChrome&lt;/tt&gt; element rather than a &lt;tt&gt;Border&lt;/tt&gt;. (These controls have other visual differences as the result of different default property values. For example, &lt;tt&gt;Button&lt;/tt&gt; has a default &lt;tt&gt;Margin&lt;/tt&gt; of 10 on all sides whereas &lt;tt&gt;Label&lt;/tt&gt; has a default &lt;tt&gt;Margin&lt;/tt&gt; of 0.)&lt;/p&gt;  &lt;blockquote&gt;&lt;b&gt;TIP&lt;/b&gt; XamlPad contains a button in its toolbar that reveals the visual tree (and property values) for any XAML that it renders. It doesn't work when hosting a Window (as in Figure 3.1), but you can change the Window element to a Page (and remove the &lt;tt&gt;SizeToContent&lt;/tt&gt; property) to take advantage of this functionality.&lt;/blockquote&gt;  &lt;p&gt;Because they enable you to peer inside the deep composition of WPF elements, visual trees can be surprisingly complex. Fortunately, although visual trees are an essential part of the WPF infrastructure, you often don't need to worry about them unless you're radically restyling controls (covered in Chapter 10, "Styles, Templates, Skins, and Themes") or doing low-level drawing (covered in Chapter 11, "2D Graphics"). Writing code that depends on a specific visual tree for a &lt;tt&gt;Button&lt;/tt&gt;, for example, breaks one of WPF's core tenets—the separation of look and logic. When someone restyles a control like Button using the techniques described in Chapter 10, its entire visual tree is replaced with something that could be completely different.&lt;/p&gt;  &lt;p&gt;&lt;img src="http://www.codeguru.com/dbfiles/get_image.php?id=13347&amp;amp;lbl=WPF03_GIF&amp;amp;ds=20070227" height="375.34818941504" width="500" /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-5803958534178265499?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/5803958534178265499/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=5803958534178265499' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/5803958534178265499'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/5803958534178265499'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/11/important-new-concepts-in-wpf.html' title='Important New Concepts in WPF'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-166731729654845422</id><published>2009-11-24T02:27:00.000-08:00</published><updated>2009-11-24T02:28:08.957-08:00</updated><title type='text'>WCF-Basic Concept</title><content type='html'>&lt;h1 class="post-title"&gt;&lt;a id="viewpost_ascx_TitleUrl" title="Title of this entry." href="http://geekswithblogs.net/nestor/articles/105477.aspx"&gt;Basic WCF Concept and Terminologies&lt;/a&gt;&lt;/h1&gt;     &lt;div class="post-content"&gt;&lt;br /&gt;&lt;p&gt;Windows Communication Foundation was official released with .NET 3.0 a couple of months ago. For those people who're doing connected, distributed systems or are in any way interested in communication aspects of systems, this ought to be a God-send. WCF basically rolled all the different Microsoft messaging formats into one, making it extremely easy to architect the communication layer of simple to complex applications. This tutorial aims to explain the basic concepts behind the common terminology used in WCF development and design.&lt;/p&gt; &lt;p&gt;Below is a quick overview of the WCF architecture&lt;/p&gt; &lt;p&gt;&lt;img src="http://sg.geocities.com/n3570r/wcfarch.jpg" /&gt;  &lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;u&gt;&lt;br /&gt;WCF Programs&lt;/u&gt;&lt;br /&gt;&lt;/strong&gt;WCF programs are basically divided into 3 different types of programs. They are common known as &lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Clients&lt;/strong&gt;&lt;br /&gt;Clients are program that consumes the services, they are normally the ones that initiate the messenging to the service. Depending on the designed architecture of your application, it is possible that a service behaves as a client as well.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Services&lt;/strong&gt;&lt;br /&gt;Services are the programs that offers the services to the consumers. They are the ones that react and process the messages, similar to the backend of the application. They can be viewed as the equivalence of web services in .Net 2.0.&lt;br /&gt;&lt;br /&gt;All services have to have &lt;strong&gt;endpoints&lt;/strong&gt; specified in order to work. A good way to remember proper endpoint configurations is ABC. A being &lt;strong&gt;Address&lt;/strong&gt;, B being &lt;strong&gt;Binding&lt;/strong&gt; and C being &lt;strong&gt;Contracts&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Address&lt;br /&gt;&lt;/strong&gt;Address are the expose points of services. Services have to tell the world that where they are via addresses.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bindings&lt;br /&gt;&lt;/strong&gt;Bindings will describe to the world on how they will communicate with the world. They contain information such as transport way, how they are encoded, are they reliable etc.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Contracts&lt;/strong&gt; are of (but not necessary all have to be present) 3 different kinds&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Service Contract&lt;br /&gt;&lt;/strong&gt;Describes what the service does.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Data Contract&lt;br /&gt;&lt;/strong&gt;Define custom messaging structure.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Message Contract&lt;br /&gt;&lt;/strong&gt;Define the message format that is passed between services.&lt;br /&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt; &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Intermediaries&lt;br /&gt;&lt;/strong&gt;Intermediaries are programs that act as "middle-man", their basic roles can be similar to providing a firewall, routing, gateway etc. They are commonly invisible to the client and services.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;&lt;strong&gt;&lt;/strong&gt; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Messages&lt;/u&gt;&lt;br /&gt;&lt;/strong&gt;All services and clients communicate via messages, which are made up of one body, and one or more header. All WCF messages are XML formatted and transport neutral. In other words, you can specify different forms of transport (HTTP, MSMQ, Named Pipes etc) for different messages. Within each application, you can specify different messaging transport depending on the communication needs of the system. Basically, messages can be divided into&lt;/p&gt; &lt;ul&gt;&lt;li&gt;&lt;strong&gt;Simplex&lt;br /&gt;&lt;/strong&gt;One way messaging. Simplex in short means "fire and forget"&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Duplex&lt;br /&gt;&lt;/strong&gt;Asynchronous two-way messaging. In short this means that once fired, the application will carry on doing its own thing. Upon the return results, it will then handle it.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Request Reply&lt;/strong&gt;&lt;br /&gt;Synchronous 2 way messaging. This is the common communicate method whereby you'll fire a request, and wait for the response before continuing.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;u&gt;Channels&lt;/u&gt;&lt;br /&gt;&lt;/strong&gt;Before a client and service can talk to each other, they have to go through a channel. Imagine a channel as a pipe, with one end being the input message and the other end with the results of the message. There're different channels that can be stacked onto each other, they are commonly known as &lt;strong&gt;Channel Stacks. &lt;/strong&gt;They can be of these different types:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;Reliable Sessions  &lt;/li&gt;&lt;li&gt;TCP Transport  &lt;/li&gt;&lt;li&gt;Binary Message Encoder  &lt;/li&gt;&lt;li&gt;Windows Security  &lt;/li&gt;&lt;li&gt;Request Reply&lt;/li&gt;&lt;/ul&gt; &lt;p&gt; The way in which messages are sent through the pipe (Channel) is known as a &lt;strong&gt;Transport&lt;/strong&gt; and they way at which they are encoded are known as &lt;strong&gt;Encodings. &lt;/strong&gt;Transport can be made up of the following:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;HTTP  &lt;/li&gt;&lt;li&gt;TCP  &lt;/li&gt;&lt;li&gt;MSMQ  &lt;/li&gt;&lt;li&gt;Named Pipes&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;I hope this quick overview will be helpful for you. &lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-166731729654845422?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/166731729654845422/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=166731729654845422' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/166731729654845422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/166731729654845422'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/11/wcf-basic-concept.html' title='WCF-Basic Concept'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-3632922149366854516</id><published>2009-10-16T04:57:00.000-07:00</published><updated>2009-10-16T04:58:25.569-07:00</updated><title type='text'>Link to good sql help site</title><content type='html'>&lt;a href="http://www.1keydata.com/sql/sqlalias.html"&gt;SQL Alias&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-3632922149366854516?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/3632922149366854516/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=3632922149366854516' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3632922149366854516'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3632922149366854516'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/10/link-to-good-sql-help-site.html' title='Link to good sql help site'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-1296360586172184009</id><published>2009-08-04T00:32:00.000-07:00</published><updated>2009-08-04T00:33:11.252-07:00</updated><title type='text'>After Triiger Note</title><content type='html'>&lt;h2&gt;SQL Server 2005 Audit Log Using Triggers&lt;/h2&gt; &lt;p&gt;Once a database row has changed how do you retrieve the original data? There  are many ways to do this, but for the application I'm working on I decided to  use triggers. &lt;/p&gt; &lt;p&gt;Creating triggers in SQL Server 2005 is fairly easy. When you create a  trigger you are presented with a template that you can modify to meet your  needs. In the template there is a line that reads: &lt;strong&gt;SET NOCOUNT ON;  &lt;/strong&gt;with the explanation that  tells you why: &lt;strong&gt;SET NOCOUNT ON  added to prevent extra result sets from interfering with SELECT  statements&lt;/strong&gt;. it looks like this:&lt;/p&gt; &lt;p&gt;-- SET NOCOUNT ON added to prevent extra result sets from&lt;br /&gt;-- interfering  with SELECT statements.&lt;br /&gt;SET NOCOUNT ON ;&lt;br /&gt;&lt;br /&gt;When using triggers to update  another table you need to leave this statement in or you will not be able to  update your audit table, from triggers, and you will get the following  error message:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;The row value(s) updated or deleted either do not make the row unique  or they alter multiple rows.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Here are the SQL Statements required to create a table, an audit table, and  the triggers :&lt;/p&gt; &lt;p&gt;USE [db]&lt;br /&gt;GO&lt;/p&gt; &lt;p&gt;CREATE TABLE [dbo].[table1](&lt;br /&gt; [table1_id] [int] IDENTITY(1,1) NOT  NULL,&lt;br /&gt; [table1_date] [datetime] NULL CONSTRAINT  [DF_table1_table1_date]  DEFAULT (getdate()),&lt;br /&gt; [table1_data]  [varchar](50) NULL,&lt;br /&gt;CONSTRAINT [PK_table1] PRIMARY KEY CLUSTERED &lt;br /&gt;(&lt;br /&gt; [table1_id] ASC&lt;br /&gt;)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY =  OFF) ON [PRIMARY]&lt;br /&gt;) ON [PRIMARY]&lt;/p&gt; &lt;p&gt;GO&lt;/p&gt; &lt;p&gt;CREATE TABLE [dbo].[table1audit](&lt;br /&gt; [table1audit_id] [int]  IDENTITY(1,1) NOT NULL,&lt;br /&gt; [table1audit_table1id] [int]  NULL,&lt;br /&gt; [table1audit_date] [datetime] NULL,&lt;br /&gt; [table1audit_data]  [varchar](50) NULL,&lt;br /&gt; [table1audit_type] [varchar](50)  NULL,&lt;br /&gt; [table1audit_performed] [datetime] NULL CONSTRAINT  [DF_table1audit_table1audit_date]  DEFAULT (getdate()),&lt;br /&gt;CONSTRAINT  [PK_table1audit] PRIMARY KEY CLUSTERED&lt;br /&gt;(&lt;br /&gt; [table1audit_id]  ASC&lt;br /&gt;)WITH (PAD_INDEX  = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]&lt;br /&gt;) ON  [PRIMARY]&lt;/p&gt; &lt;p&gt;GO&lt;/p&gt; &lt;p&gt;CREATE TRIGGER dbo.table1auditdelete&lt;br /&gt;   ON  dbo.table1 &lt;br /&gt;   AFTER DELETE&lt;br /&gt;AS&lt;br /&gt;BEGIN&lt;br /&gt; -- SET NOCOUNT ON added  to prevent extra result sets from&lt;br /&gt; -- interfering with SELECT  statements.&lt;br /&gt; SET NOCOUNT ON;&lt;/p&gt; &lt;p&gt;    INSERT INTO table1audit(table1audit_table1id,  table1audit_date, table1audit_data, table1audit_type)&lt;br /&gt;     SELECT table1_id, table1_date, table1_data, 'DELETE'&lt;br /&gt;    FROM  deleted&lt;/p&gt; &lt;p&gt;END&lt;br /&gt;GO&lt;/p&gt; &lt;p&gt;CREATE TRIGGER dbo.table1auditupdate&lt;br /&gt;   ON  dbo.table1 &lt;br /&gt;   AFTER UPDATE&lt;br /&gt;AS&lt;br /&gt;BEGIN&lt;br /&gt; -- SET NOCOUNT ON added  to prevent extra result sets from&lt;br /&gt; -- interfering with SELECT  statements.&lt;br /&gt; SET NOCOUNT ON;&lt;/p&gt; &lt;p&gt;    INSERT INTO table1audit(table1audit_table1id,  table1audit_date, table1audit_data, table1audit_type)&lt;br /&gt;     SELECT table1_id, table1_date, table1_data, 'UPDATE'&lt;br /&gt;    FROM  inserted&lt;/p&gt; &lt;p&gt;END&lt;br /&gt;GO&lt;/p&gt; &lt;p&gt;CREATE TRIGGER dbo.table1auditinsert&lt;br /&gt;   ON  dbo.table1 &lt;br /&gt;   AFTER INSERT&lt;br /&gt;AS&lt;br /&gt;BEGIN&lt;br /&gt; -- SET NOCOUNT ON added  to prevent extra result sets from&lt;br /&gt; -- interfering with SELECT  statements.&lt;br /&gt; SET NOCOUNT ON;&lt;/p&gt; &lt;p&gt;    INSERT INTO table1audit(table1audit_table1id,  table1audit_date, table1audit_data, table1audit_type)&lt;br /&gt;     SELECT table1_id, table1_date, table1_data, 'INSERT'&lt;br /&gt;    FROM  inserted&lt;/p&gt; &lt;p&gt;END&lt;br /&gt;GO&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-1296360586172184009?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/1296360586172184009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=1296360586172184009' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1296360586172184009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1296360586172184009'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/08/after-triiger-note.html' title='After Triiger Note'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-3917874407235906696</id><published>2009-06-23T00:06:00.000-07:00</published><updated>2009-06-23T00:08:15.059-07:00</updated><title type='text'>Networking-PrinterSharing  in Win XP</title><content type='html'>How to Share Printer in Windows XP&lt;br /&gt;Follow this step-by-step instructions to share printer in Windows XP.&lt;br /&gt;1) Go to Start and click Control Panel. Control Panel Window will appear, then double click Printers and faxes.&lt;br /&gt;2) Printers and Faxes window will appear. Right click the printer you want to share, then click Sharing…&lt;br /&gt;Note: Make sure you've enabled File and Printer Sharing for Microsoft Networks on network card's properties.&lt;br /&gt;3) Select Sharing tab and tick Share this printer to share the printer. You can type in a new name in the Share name text box to change your printer name on the network, however this will not change the printer name on your computer. Click Apply.&lt;br /&gt;Note: If the other users using different version of Windows to access your printer, they will need to install printer driver themselves. You can help by installing additional printer drivers on your Windows XP, so that the printer driver will be installed when other users access the shared printer with different version of Windows. Click Additional Drivers, tick additional driver you would like to install. You will be prompted to install those additional drivers after clicking OK.&lt;br /&gt;4) Once you have shared the printer, you will see there is a hand supporting your printer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-3917874407235906696?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/3917874407235906696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=3917874407235906696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3917874407235906696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3917874407235906696'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/06/networking-printersharing-in-win-xp.html' title='Networking-PrinterSharing  in Win XP'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-7408289362980410434</id><published>2009-02-05T21:45:00.000-08:00</published><updated>2009-02-05T21:46:51.748-08:00</updated><title type='text'>ASPNET QUESTIONS</title><content type='html'>&lt;a name="1788184629039476662"&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://aspnetquestion.blogspot.com/2008/06/aspnet-questions.html"&gt;Asp.net Questions&lt;/a&gt; Posted by Bhaumik  3:19 PM  &lt;a class="comment-link" onclick="" href="https://www.blogger.com/comment.g?blogID=2017143602626807538&amp;amp;postID=1788184629039476662"&gt;1 comments »&lt;/a&gt;&lt;br /&gt;Que:- What is the sequence in which ASP.NET events are processed ?Ans:- Following is the sequence in which the events occur :-* Page_Init.* Page_Load.* Control events.* Page_Unload event.Page_init event only occurs when first time the page is started, but Page_Load occurs in subsequent request of the page.Que:- In which event are the controls fully loaded ?Ans:- Page_load event guarantees that all controls are fully loaded. Controls are also accessed in Page_Init events but you will see that viewstate is not fully loaded during this event.Que:- How can we identify that the Page is PostBack ?Ans:- Page object has a “IsPostBack” property which can be checked to know that is the page posted back.Que:-What is event bubbling ?Ans:- Server controls like Datagrid, DataList, Repeater can have other child controls inside them. Example DataGrid can have combo box inside datagrid. These child control do not raise there events by themselves, rather they pass the event to the container parent (which can be a datagrid, datalist, repeater), which passed to the page as “ItemCommand” event. As the child control send there events to parent this is termed as event bubbling.Que:- If we want to make sure that no one has tampered with ViewState, how do we ensure it?Ans:- Using the @Page directive EnableViewStateMac to True.Que:- What is AppSetting Section in “Web.Config” file?Ans:- Web.config file defines configuration for a webproject. Using “AppSetting” section we can define user defined values. Example below defined is ConnectionString” section which will be used through out the project for database connection.Que:- Where is ViewState information stored ?Ans:- In HTML Hidden Fields.Que:- How can we create custom controls in ASP.NET ?Ans:- User controls are created using .ASCX in ASP.NET. After .ASCX file is created you need to two things in order that the ASCX can be used in project:* Register the ASCX control in page using the .Example:-* Now to use the above accounting footer in page you can use the below directive.Que:- How many types of validation controls are provided by ASP.NET ?Ans:- There are six main types of validation controls :-1). RequiredFieldValidator :-It checks whether the control have any value. It's used when you want the control should not be empty.2). RangeValidator :- It checks if the value in validated control is in that specific range. ExampleTxtCustomerCode should not be more than eight length.3). CompareValidator:-It checks that the value in controls should match the value in other control. ExampleTextbox TxtPie should be equal to 3.14.4). RegularExpressionValidator:-When we want the control value should match with a specific regular expression.5). CustomValidator:-It is used to define UserDefined validation.6). ValidationSummary:-It displays summary of all current validation errors.Que:- Can you explain what is “AutoPostBack” feature in ASP.NET ?Ans:- If we want the control to automatically postback in case of any event, we will need to check this attribute as true. Example on a ComboBox change we need to send the event immediately to the server side then set the “AutoPostBack” attribute to true.Que:- How can you enable automatic paging in DataGrid ?Ans:- Following are the points to be done in order to enable paging in Datagrid :-* Set the “AllowPaging” to true.* In PageIndexChanged event set the current pageindex clicked.Que:-What is the difference between “Web.config” and “Machine.Config” ?Ans:- “Web.config” files apply settings to each web application, while Machine.config” file apply settings to all ASP.NET applications.Que:- What is the difference between Server.Transfer and response.Redirect ?Ans:- Following are the major differences between them:-* Response.Redirect sends message to the browser saying it to move to somedifferent page, while server.transfer does not send any message to the browserbut rather redirects the user directly from the server itself. So in server.transferthere is no round trip while response.redirect has a round trip and hence putsa load on server.* Using Server.Transfer you can not redirect to a different from the server itself.Example if your server is www.yahoo.com you can use server.transfer to moveto www.microsoft.com but yes you can move to www.yahoo.com/travels, i.e.within websites. This cross server redirect is possible only usingResponse.redirect.* With server.transfer you can preserve your information. It has a parametercalled as “preserveForm”. So the existing query string etc. will be able in thecalling page. In response.redirect you can maintain the state, but haslot of drawbacks.Que:- What is the difference between Authentication and authorization?Ans:- This can be a tricky question. These two concepts seem altogether similar but there is wide range of difference. Authentication is verifying the identity of a user and authorization is process where we check does this identity have access rights to the system. In short we can say the following authentication is the process of obtaining some sort of credentials from the users and using those credentials to verify the user’s identity. Authorization is the process of allowing an authenticated user access to resources. Authentication always proceed to Authorization; even if your application lets anonymous users connect and usethe application, it still authenticates them as being anonymous.Que:- What are the various ways of authentication techniques in ASP.NET?Ans:- Selecting an authentication provider is as simple as making an entry in the web.config file for the application. You can use one of these entries to select the corresponding built in authentication provider:* authentication mode=”windows”* authentication mode=”passport”* authentication mode=”forms”* Custom authentication where you might install an ISAPI filter in IIS thatcompares incoming requests to list of source IP addresses, and considersrequests to be authenticated if they come from an acceptable address. In thatcase, you would set the authentication mode to none to prevent any of the.net authentication providers from being triggered.Que:- How does authorization work in ASP.NET?Ans:- ASP.NET impersonation is controlled by entries in the applications web.config file. The default setting is “no impersonation”. You can explicitly specify that ASP.NET shouldn’t use impersonation by including the following code in the fileIt means that ASP.NET will not perform any authentication and runs with its ownprivileges. By default ASP.NET runs as an unprivileged account named ASPNET. Youcan change this by making a setting in the processModel section of the machine.configfile. When you make this setting, it automatically applies to every site on the server. To user a high-privileged system account instead of a low-privileged set the userNameattribute of the processModel element to SYSTEM. Using this setting is a definite security risk, as it elevates the privileges of the ASP.NET process to a point where it can do bad things to the operating system.Que:- What’s difference between Datagrid, Datalist and repeater ?Ans:- A Datagrid, Datalist and Repeater are all ASP.NET data Web controls.They have many things in common like DataSource Property, DataBind MethodItemDataBound and ItemCreated.When you assign the DataSource Property of a Datagrid to a DataSet then each DataRowpresent in the DataRow Collection of DataTable is assigned to a correspondingDataGridItem and this is same for the rest of the two controls also. But The HTML code generated for a Datagrid has an HTML TABLE element created for the particular DataRow and its a Table form representation with Columns and Rows.For a Datalist its an Array of Rows and based on the Template Selected and theRepeatColumn Property value We can specify how many DataSource records shouldappear per HTML table row. In short in datagrid we have one record per row, but indatalist we can have five or six rows per row.For a Repeater Control, the Datarecords to be displayed depends upon the Templatesspecified and the only HTML generated is the due to the Templates.In addition to these, Datagrid has a in-built support for Sort, Filter and paging the Data,which is not possible when using a DataList and for a Repeater Control we would require to write an explicit code to do paging.Que:- From performance point of view how do they rate ?Ans:- Repeater is fastest followed by Datalist and finally datagrid.Que:- What is the method to customize columns in DataGrid?Ans:- Use the template column.Que:- How can we format data inside DataGrid?Ans:- Use the DataFormatString property.Que:- How to decide on the design consideration to take a Datagrid, datalist or repeater ?Ans:- Many make a blind choice of choosing datagrid directly, but that's not the right way.Datagrid provides ability to allow the end-user to sort, page, and edit its data. But it comes at a cost of speed. Second the display format is simple that is in row and columns.Real life scenarios can be more demanding that With its templates, the DataList provides more control over the look and feel of the displayed data than the DataGrid. It offers better performance than datagrid Repeater control allows for complete and total control. With the Repeater, the only HTML emitted are the values of the databinding statements in the templates along with the HTML markup specified in the templates—no "extra" HTML is emitted, as with the DataGrid and DataList. By requiring the developer to specify the complete generated HTML markup, the Repeater often requires the longest development time. But repeater does not provide editing features like datagrid so everything has to be coded by programmer. However, the Repeater does boast the best performance of the three data Web controls.Repeater is fastest followed by Datalist and finally datagrid.Que:- Difference between ASP and ASP.NET?Ans:- ASP.NET new feature supports are as follows :-Better Language Support* New ADO.NET Concepts have been implemented.ASP.NET supports full language (C#, VB.NET, C++) and not simple scriptinglike VBSCRIPT..Better controls than ASP* ASP.NET covers large set’s of HTML controls..* Better Display grid like Datagrid, Repeater and datalist.Many of the displaygrids have paging support.Controls have events support* All ASP.NET controls support events.* Load, Click and Change events handled by code makes coding much simpler and much better organized.Compiled CodeThe first request for an ASP.NET page on the server will compile the ASP.NET code andkeep a cached copy in memory. The result of this is greatly increased performance.Better Authentication SupportASP.NET supports forms-based user authentication, including cookie management andautomatic redirecting of unauthorized logins. (You can still do your custom login page and custom user checking).User Accounts and RolesASP.NET allows for user accounts and roles, to give each user (with a given role) access to different server code and executables.High Scalability* Much has been done with ASP.NET to provide greater scalability.* Server to server communication has been greatly enhanced, making it possibleto scale an application over several servers. One example of this is the abilityto run XML parsers, XSL transformations and even resource hungry session objects on other servers.Easy ConfigurationConfiguration of ASP.NET is done with plain text files.* Configuration files can be uploaded or changed while the application is running.No need to restart the server. No more metabase or registry puzzle.Easy DeploymentNo more server restart to deploy or replace compiled code. ASP.NET simply redirects all new requests to the new code.Que:- What are major events in GLOBAL.ASAX file ?Ans:- The Global.asax file, which is derived from the HttpApplication class, maintains a poolof HttpApplication objects, and assigns them to applications as needed. The Global.asaxfile contains the following events:Application_Init: Fired when an application initializes or is first called. It is invoked forall HttpApplication object instances.Application_Disposed: Fired just before an application is destroyed. This is the ideallocation for cleaning up previously used resources.Application_Error: Fired when an unhandled exception is encountered within theapplication.Application_Start: Fired when the first instance of the HttpApplication class is created.It allows you to create objects that are accessible by all HttpApplication instances.Application_End: Fired when the last instance of an HttpApplication class is destroyed.It is fired only once during an application's lifetime.Application_BeginRequest: Fired when an application request is received. It is the firstevent fired for a request, which is often a page request (URL) that a user enters.Application_EndRequest: The last event fired for an application request.Application_PreRequestHandlerExecute: Fired before the ASP.NET page frameworkbegins executing an event handler like a page or Web service.Application_PostRequestHandlerExecute: Fired when the ASP.NET page framework has finished executing an event handlerApplcation_PreSendRequestHeaders: Fired before the ASP.NET page framework sendsHTTP headers to a requesting client (browser).Application_UpdateRequestCache: Fired when the ASP.NET page framework completeshandler execution to allow caching modules to store responses to be used to handlesubsequent requests.Application_AuthenticateRequest: Fired when the security module has established thecurrent user's identity as valid. At this point, the user's credentials have been validated.Application_AuthorizeRequest: Fired when the security module has verified that a usercan access resources.Session_Start: Fired when a new user visits the application Web site.Session_End: Fired when a user's session times out, ends, or they leave the applicationWeb site.Que:- What order they are triggered ?Ans:- They're triggered in the following order:* Application_BeginRequest* Application_AuthenticateRequest* Application_AuthorizeRequest* Application_ResolveRequestCache* Application_AcquireRequestState* Application_PreRequestHandlerExecute* Application_PreSendRequestHeaders* Application_PreSendRequestContent&lt;&gt;* Application_PostRequestHandlerExecute* Application_ReleaseRequestState* Application_UpdateRequestCache* Application_EndRequest.Que:- How can we force all the validation control to run ?Ans:- Page.ValidateQue:- How can we check if all the validation control are valid and proper ?Ans:- Using the Page.IsValid() property you can check whether all the validation are done.Que:- Which JavaScript file is referenced for validating the validators at the client side ?Ans:- WebUIValidation.js javascript file installed at “aspnet_client” root IIS directory is usedto validate the validation controls at the client sideQue:- What is Tracing in ASP.NET ?Ans:- Tracing allows us to view how the code was executed in detail.Que:- How do we enable tracing ?Ans:- Que:- How can we kill a user session ?Ans:- Session.abandonQue:- How do I send email message from ASP.NET ?ANs:- ASP.NET provides two namespaces System.WEB.mailmessage classandSystem.Web.Mail.Smtpmail class. Just a small homework create a Asp.NET project andsend a email at "Email Adress". Do not Spam.Que:- Explain the differences between Server-side and Client-side code?Ans:- Server side code is executed at the server side on IIS in ASP.NET framework, whileclient side code is executed on the browser.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-7408289362980410434?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/7408289362980410434/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=7408289362980410434' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/7408289362980410434'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/7408289362980410434'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/02/aspnet-questions.html' title='ASPNET QUESTIONS'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-4531661359011217216</id><published>2009-01-28T22:15:00.000-08:00</published><updated>2009-01-28T22:17:13.826-08:00</updated><title type='text'>Normalization</title><content type='html'>&lt;h3&gt;What is Normalization?&lt;/h3&gt; Normalization is the process of efficiently organizing data in a database. There are two goals of the normalization process: eliminating redundant data (for example, storing the same data in more than one &lt;a href="http://databases.about.com/library/glossary/bldef-table.htm"&gt;table&lt;/a&gt;) and ensuring data dependencies make sense (only storing related data in a table). Both of these are worthy goals as they reduce the amount of space a database consumes and ensure that data is logically stored. &lt;h3&gt;The Normal Forms&lt;/h3&gt;The database community has developed a series of guidelines for ensuring that databases are normalized. These are referred to as normal forms and are numbered from one (the lowest form of normalization, referred to as &lt;a href="http://databases.about.com/od/specificproducts/l/aa1nf.htm"&gt;first normal form&lt;/a&gt; or 1NF) through five (fifth normal form or 5NF).  In practical applications, you'll often see &lt;a href="http://databases.about.com/od/specificproducts/l/aa1nf.htm"&gt;1NF&lt;/a&gt;, &lt;a href="http://databases.about.com/od/specificproducts/a/2nf.htm"&gt;2NF&lt;/a&gt;, and &lt;a href="http://databases.about.com/od/specificproducts/l/aa3nf.htm"&gt;3NF&lt;/a&gt; along with the occasional 4NF.  Fifth normal form is very rarely seen and won't be discussed in this article. &lt;br /&gt;&lt;br /&gt;Before we begin our discussion of the normal forms, it's important to point out that they are guidelines and guidelines only. Occasionally, it becomes necessary to stray from them to meet practical business requirements. However, when variations take place, it's extremely important to evaluate any possible ramifications they could have on your system and account for possible inconsistencies. That said, let's explore the normal forms. &lt;h3&gt;First Normal Form (1NF)&lt;/h3&gt; First normal form (1NF) sets the very basic rules for an organized database:  &lt;ul&gt;&lt;li&gt; Eliminate duplicative &lt;a href="http://databases.about.com/library/glossary/bldef-column.htm"&gt;columns&lt;/a&gt; from the same table.  &lt;/li&gt;&lt;li&gt; Create separate tables for each group of related data and identify each &lt;a href="http://databases.about.com/library/glossary/bldef-row.htm"&gt;row&lt;/a&gt; with a unique column or set of columns (the &lt;a href="http://databases.about.com/library/glossary/bldef-primarykey.htm"&gt;primary key&lt;/a&gt;).  &lt;/li&gt;&lt;/ul&gt; &lt;h3&gt;Second Normal Form (2NF)&lt;/h3&gt; Second normal form (2NF) further addresses the concept of removing duplicative data: &lt;ul&gt;&lt;li&gt; Meet all the requirements of the first normal form. &lt;/li&gt;&lt;li&gt; Remove subsets of data that apply to multiple rows of a table and place them in separate tables.  &lt;/li&gt;&lt;li&gt; Create relationships between these new tables and their predecessors through the use of &lt;a href="http://databases.about.com/library/glossary/bldef-foreignkey.htm"&gt;foreign keys&lt;/a&gt;.  &lt;/li&gt;&lt;/ul&gt; &lt;h3&gt;Third Normal Form (3NF)&lt;/h3&gt; Third normal form (3NF) goes one large step further: &lt;ul&gt;&lt;li&gt; Meet all the requirements of the second normal form. &lt;/li&gt;&lt;li&gt; Remove columns that are not dependent upon the primary key.  &lt;/li&gt;&lt;/ul&gt; &lt;h3&gt;Fourth Normal Form (4NF)&lt;/h3&gt; Finally, fourth normal form (4NF) has one additional requirement: &lt;ul&gt;&lt;li&gt; Meet all the requirements of the third normal form. &lt;/li&gt;&lt;li&gt; A relation is in 4NF if it has no multi-valued dependencies.  &lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-4531661359011217216?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/4531661359011217216/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=4531661359011217216' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/4531661359011217216'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/4531661359011217216'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2009/01/normalization.html' title='Normalization'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-7485842479196464581</id><published>2008-11-06T21:42:00.000-08:00</published><updated>2008-11-06T21:43:51.685-08:00</updated><title type='text'>Import / Export Excel Spreadsheet Data into SQL Server Database Table Using SqlBulkCopy</title><content type='html'>Using SqlBulkCopy to Import Excel Spreadsheet Data into SQL Server&lt;br /&gt;Let's take an Excel Workbook with a worksheet, called Data, that contains 1000 rows of nonsense data broken into 2 columns, ID and Data.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I want to copy this data into a SQL Server Database Table, called ExcelData, with the same schema.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Just a little bit of code transfers the data from the Excel Spreadsheet into the SQL Server Database Table:&lt;br /&gt; // Connection String to Excel Workbook&lt;br /&gt;string excelConnectionString = @"Provider=Microsoft .Jet.OLEDB.4.0;Data Source=Book1.xls;Extended Properties=""Excel 8.0;HDR=YES;""";&lt;br /&gt;// Create Connection to Excel Workbook&lt;br /&gt;using (OleDbConnection connection = new OleDbConnection(excelConnectionString))&lt;br /&gt;{&lt;br /&gt;OleDbCommand command = new OleDbCommand ("Select ID,Data FROM [Data$]", connection);&lt;br /&gt;connection.Open();&lt;br /&gt;&lt;br /&gt;// Create DbDataReader to Data Worksheet&lt;br /&gt;using (DbDataReader dr = command.ExecuteReader())&lt;br /&gt;{&lt;br /&gt;// SQL Server Connection String&lt;br /&gt;string sqlConnectionString = "Data Source=.; Initial Catalog=Test;Integrated Security=True";&lt;br /&gt;// Bulk Copy to SQL Server&lt;br /&gt;using (SqlBulkCopy bulkCopy = new SqlBulkCopy(sqlConnectionString))&lt;br /&gt;{&lt;br /&gt;bulkCopy.DestinationTableName = "ExcelData";&lt;br /&gt;bulkCopy.WriteToServer(dr);&lt;br /&gt;}&lt;br /&gt;}&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-7485842479196464581?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/7485842479196464581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=7485842479196464581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/7485842479196464581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/7485842479196464581'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/11/import-export-excel-spreadsheet-data.html' title='Import / Export Excel Spreadsheet Data into SQL Server Database Table Using SqlBulkCopy'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-6375860367332309247</id><published>2008-07-15T04:49:00.000-07:00</published><updated>2008-07-15T04:50:22.253-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Jagannath Karmakar'/><title type='text'>Find all databases that the current user has access to</title><content type='html'>&lt;p&gt; &lt;/p&gt;&lt;p&gt;SELECT [Name] as DatabaseName from master.dbo.sysdatabases&lt;/p&gt;&lt;p&gt;WHERE ISNULL(HAS_DBACCESS ([Name]),0)=1&lt;/p&gt;&lt;p&gt;ORDER BY [Name]&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-6375860367332309247?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/6375860367332309247/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=6375860367332309247' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6375860367332309247'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6375860367332309247'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/07/find-all-databases-that-current-user.html' title='Find all databases that the current user has access to'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-6604088125020902173</id><published>2008-07-15T04:39:00.001-07:00</published><updated>2008-07-15T04:40:06.898-07:00</updated><title type='text'>How to back up a database using script in SQL SERVER 2005</title><content type='html'>Use this script in order to backup a database :/*Author : Suprotim AgarwalCreation Date: Jan 2, 2008*/CREATE PROCEDURE [dbo].[usersp_BackUpDB]@DBNAME nvarchar(50),@PATH nvarchar(200),@BCKUPNAME nvarchar(50)ASBACKUP DATABASE @DBNAMETO DISK = @PATHWITH NOFORMAT, NOINIT,NAME = @BCKUPNAME,STATS = 10You can call this script using :DECLARE @return_value intEXEC @return_value = [dbo].[usersp_BackUpDB]@DBNAME = N'Northwind',@PATH = N'C:\temp\Northwind.bak',@BCKUPNAME = N'NW'SELECT 'Return Value' = @return_valueGO&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-6604088125020902173?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/6604088125020902173/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=6604088125020902173' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6604088125020902173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6604088125020902173'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/07/how-to-back-up-database-using-script-in.html' title='How to back up a database using script in SQL SERVER 2005'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-6046912169976057168</id><published>2008-07-15T04:03:00.000-07:00</published><updated>2008-07-15T04:06:41.994-07:00</updated><title type='text'>New Interview Tips on .net</title><content type='html'>What is an application server?&lt;br /&gt;As defined in Wikipedia, an application server is a &lt;a title="Software engine" href="http://en.wikipedia.org/wiki/Software_engine"&gt;software engine&lt;/a&gt; that delivers &lt;a title="Computer application" href="http://en.wikipedia.org/wiki/Computer_application"&gt;applications&lt;/a&gt; to &lt;a title="Client computer" href="http://en.wikipedia.org/wiki/Client_computer"&gt;client computers&lt;/a&gt; or devices. The application server runs your server code. Some well known application servers are IIS (Microsoft), WebLogic Server (BEA), JBoss (Red Hat), WebSphere (IBM).&lt;br /&gt;Compare C# and VB.NET&lt;br /&gt;A detailed comparison can be found over &lt;a href="http://msdn2.microsoft.com/en-us/library/czz35az4(vs.80).aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;What is a base class and derived class?&lt;br /&gt;A class is a template for creating an object. The class from which other classes derive fundamental functionality is called a base class. For e.g. If Class Y derives from Class X, then Class X is a base class.&lt;br /&gt;&lt;br /&gt;The class which derives functionality from a base class is called a derived class. If Class Y derives from Class X, then Class Y is a derived class.&lt;br /&gt;What is an extender class?&lt;br /&gt;An extender class allows you to extend the functionality of an existing control. It is used in Windows forms applications to add properties to controls.&lt;br /&gt;A demonstration of extender classes can be found over &lt;a href="http://www.code-magazine.com/Article.aspx?quickid=0301041"&gt;here&lt;/a&gt;.&lt;br /&gt;What is inheritance?&lt;br /&gt;Inheritance represents the relationship between two classes where one type derives functionality from a second type and then extends it by adding new methods, properties, events, fields and constants.&lt;br /&gt;&lt;br /&gt;C# support two types of inheritance:&lt;br /&gt;·         Implementation inheritance&lt;br /&gt;·         Interface inheritance&lt;br /&gt;What is implementation and interface inheritance?&lt;br /&gt;When a class (type) is derived from another class(type) such that it inherits all the members of the base type it is Implementation Inheritance.&lt;br /&gt;When a type (class or a struct) inherits only the signatures of the functions from another type it is Interface Inheritance.&lt;br /&gt;In general Classes can be derived from another class, hence support Implementation inheritance. At the same time Classes can also be derived from one or more interfaces. Hence they support Interface inheritance.&lt;br /&gt;Source: &lt;a href="http://www.exforsys.com/tutorials/csharp/inheritance-in-csharp.html"&gt;Exforsys&lt;/a&gt;.&lt;br /&gt;What is inheritance hierarchy?&lt;br /&gt;The class which derives functionality from a base class is called a derived class. A derived class can also act as a base class for another class. Thus it is possible to create a tree-like structure that illustrates the relationship between all related classes. This structure is known as the inheritance hierarchy.&lt;br /&gt;How do you prevent a class from being inherited?&lt;br /&gt;In VB.NET you use the NotInheritable modifier to prevent programmers from using the class as a base class. In C#, use the sealed keyword.&lt;br /&gt;When should you use inheritance?&lt;br /&gt;Read &lt;a href="http://msdn2.microsoft.com/en-us/library/27db6csx(VS.80).aspx#Mtps_DropDownFilterText"&gt;this.&lt;/a&gt;&lt;br /&gt;Define Overriding?&lt;br /&gt;Overriding is a concept where a method in a derived class uses the same name, return type, and arguments as a method in its base class. In other words, if the derived class contains its own implementation of the method rather than using the method in the base class, the process is called overriding.&lt;br /&gt;Can you use multiple inheritance in .NET?&lt;br /&gt;.NET supports only single inheritance. However the purpose is accomplished using multiple interfaces.&lt;br /&gt;Why don’t we have multiple inheritance in .NET?&lt;br /&gt;There are several reasons for this. In simple words, the efforts are more, benefits are less. Different languages have different implementation requirements of multiple inheritance. So in order to implement multiple inheritance, we need to study the implementation aspects of all the languages that are CLR compliant and then implement a common methodology of implementing it. This is too much of efforts. Moreover multiple interface inheritance very much covers the benefits that multiple inheritance has.&lt;br /&gt;What is an Interface?&lt;br /&gt;An interface is a standard or contract that contains only the signatures of methods or events. The implementation is done in the class that inherits from this interface. Interfaces are primarily used to set a common standard or contract.&lt;br /&gt;When should you use abstract class vs interface or What is the difference between an abstract class and interface?&lt;br /&gt;I would suggest you to read &lt;a href="http://msdn2.microsoft.com/en-us/library/scsyfw1d(VS.71).aspx"&gt;this&lt;/a&gt;. There is a good comparison given over &lt;a href="http://en.csharp-online.net/Should_I_use_an_abstract_class_or_an_interface%3F"&gt;here&lt;/a&gt;.&lt;br /&gt;What are events and delegates?&lt;br /&gt;An event is a message sent by a control to notify the occurrence of an action. However it is not known which object receives the event. For this reason, .NET provides a special type called Delegate which acts as an intermediary between the sender object and receiver object.&lt;br /&gt;What is business logic?&lt;br /&gt;It is the functionality which handles the exchange of information between database and a user interface.&lt;br /&gt;What is a component?&lt;br /&gt;Component is a group of logically related classes and methods. A component is a class that implements the IComponent interface or uses a class that implements IComponent interface.&lt;br /&gt;What is a control?&lt;br /&gt;A control is a component that provides user-interface (UI) capabilities.&lt;br /&gt;What are the differences between a control and a component?&lt;br /&gt;The differences can be studied over &lt;a href="http://msdn2.microsoft.com/en-us/library/0b1dk63b(vs.80).aspx"&gt;here.&lt;/a&gt;&lt;br /&gt;What are design patterns?&lt;br /&gt;Design patterns are common solutions to common design problems.&lt;br /&gt;What is a connection pool?&lt;br /&gt;A connection pool is a ‘collection of connections’ which are shared between the clients requesting one. Once the connection is closed, it returns back to the pool. This allows the connections to be reused.&lt;br /&gt;What is a flat file?&lt;br /&gt;A flat file is the name given to text, which can be read or written only sequentially.&lt;br /&gt;What are functional and non-functional requirements?&lt;br /&gt;Functional requirements defines the behavior of a system whereas non-functional requirements specify how the system should behave; in other words they specify the quality requirements and judge the behavior of a system.&lt;br /&gt;E.g.&lt;br /&gt;Functional - Display a chart which shows the maximum number of products sold in a region.&lt;br /&gt;Non-functional – The data presented in the chart must be updated every 5 minutes.&lt;br /&gt;What is the global assembly cache (GAC)?&lt;br /&gt;GAC is a machine-wide cache of assemblies that allows .NET applications to share libraries. GAC solves some of the problems associated with dll’s (DLL Hell).&lt;br /&gt;What is a stack? What is a heap? Give the differences between the two?&lt;br /&gt;Stack is a place in the memory where value types are stored. Heap is a place in the memory where the reference types are stored.&lt;br /&gt;&lt;br /&gt;Check &lt;a href="http://www.c-sharpcorner.com/UploadFile/rmcochran/csharp_memory01122006130034PM/csharp_memory.aspx?ArticleID=9adb0e3c-b3f6-40b5-98b5-413b6d348b91"&gt;this&lt;/a&gt; link for the differences.&lt;br /&gt;What is instrumentation?&lt;br /&gt;It is the ability to monitor an application so that information about the application’s progress, performance and status can be captured and reported.&lt;br /&gt;What is code review?&lt;br /&gt;The process of  examining the source code generally through a peer, to verify it against best practices.&lt;br /&gt;What is logging?&lt;br /&gt;Logging is the process of persisting information about the status of an application.&lt;br /&gt;What are mock-ups?&lt;br /&gt;Mock-ups are a set of designs in the form of screens, diagrams, snapshots etc., that helps verify the design and acquire feedback about the application’s requirements and use cases, at an early stage of the design process.&lt;br /&gt;What is a Form?&lt;br /&gt;A form is a representation of any window displayed in your application. Form can be used to create standard, borderless, floating, modal windows.&lt;br /&gt;What is a multiple-document interface(MDI)?&lt;br /&gt;A user interface container that enables a user to work with more than one document at a time. E.g. Microsoft Excel.&lt;br /&gt;What is a single-document interface (SDI) ?&lt;br /&gt;A user interface that is created to manage graphical user interfaces and controls into single windows. E.g. Microsoft Word&lt;br /&gt;What is BLOB ?&lt;br /&gt;A BLOB (binary large object) is a large item such as an image or an exe  represented in binary form.&lt;br /&gt;What is ClickOnce?&lt;br /&gt;ClickOnce is a new deployment technology that allows you to create and publish self-updating applications that can be installed and run with minimal user interaction.&lt;br /&gt;What is object role modeling (ORM) ?&lt;br /&gt;It is a logical model for designing and querying database models. There are various ORM tools in the market like CaseTalk, Microsoft Visio for Enterprise Architects, Infagon etc.&lt;br /&gt;What is a private assembly?&lt;br /&gt;A private assembly is local to the installation directory of an application and is used only by that application.&lt;br /&gt;What is a shared assembly?&lt;br /&gt;A shared assembly is kept in the global assembly cache (GAC) and can be used by one or more applications on a machine.&lt;br /&gt;What is the difference between user and custom controls?&lt;br /&gt;User controls are easier to create whereas custom controls require extra effort.&lt;br /&gt;User controls are used when the layout is static whereas custom controls are used in dynamic layouts.&lt;br /&gt;A user control cannot be added to the toolbox whereas a custom control can be.&lt;br /&gt;A separate copy of a user control is required in every application that uses it whereas since custom controls are stored in the GAC, only a single copy can be used by all applications.&lt;br /&gt;Where do custom controls reside?&lt;br /&gt;In the global assembly cache (GAC).&lt;br /&gt;What is a third-party control ?&lt;br /&gt;A third-party control is one that is not created by the owners of a project. They are usually used to save time and resources and reuse the functionality developed by others (third-party).&lt;br /&gt;What is a binary formatter?&lt;br /&gt;Binary formatter is used to serialize and deserialize an object in binary format.&lt;br /&gt;What is Boxing/Unboxing?&lt;br /&gt;Boxing is used to convert value types to object.&lt;br /&gt;E.g. int x = 1;&lt;br /&gt;object obj = x ;&lt;br /&gt;Unboxing is used to convert the object back to the value type.&lt;br /&gt;E.g. int y = (int)obj;&lt;br /&gt;Boxing/unboxing is quiet an expensive operation.&lt;br /&gt;What is a COM Callable Wrapper (CCW)?&lt;br /&gt;CCW is a wrapper created by the common language runtime(CLR) that enables COM components to access .NET objects.&lt;br /&gt;What is a Runtime Callable Wrapper (RCW)?&lt;br /&gt;RCW is a wrapper created by the common language runtime(CLR) to enable .NET components to call COM components.&lt;br /&gt;What is a digital signature?&lt;br /&gt;A digital signature is an electronic signature used to verify/gurantee the identity of the individual who is sending the message.&lt;br /&gt;What is garbage collection?&lt;br /&gt;Garbage collection is the process of managing the allocation and release of memory in your applications. Read &lt;a href="http://msdn2.microsoft.com/en-us/library/0xy59wtx(vs.80).aspx"&gt;this&lt;/a&gt; article for more information.&lt;br /&gt;What is globalization?&lt;br /&gt;Globalization is the process of customizing applications that support multiple cultures and regions.&lt;br /&gt;What is localization?&lt;br /&gt;Localization is the process of customizing applications that support a given culture and regions.&lt;br /&gt;What is MIME?&lt;br /&gt;The definition of MIME or Multipurpose Internet Mail Extensions as stated in MSDN is “MIME is a standard that can be used to include content of various types in a single message. MIME extends the Simple Mail Transfer Protocol (SMTP) format of mail messages to include multiple content, both textual and non-textual. Parts of the message may be images, audio, or text in different character sets. The MIME standard derives from RFCs such as 2821 and 2822”. Quoted from &lt;a href="http://support.microsoft.com/kb/836555"&gt;here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-6046912169976057168?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/6046912169976057168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=6046912169976057168' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6046912169976057168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/6046912169976057168'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/07/new-interview-tips-on-net.html' title='New Interview Tips on .net'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-2995100609007816241</id><published>2008-06-27T07:24:00.001-07:00</published><updated>2008-06-27T07:24:57.641-07:00</updated><title type='text'>SQL SERVER - Query Analyzer Shortcuts</title><content type='html'>Shortcut Function   Shortcut Function &lt;br /&gt;ALT+BREAK Cancel a query   CTRL+SHIFT+F2 Clear all bookmarks &lt;br /&gt;ALT+F1 Database object information   CTRL+SHIFT+INSERT Insert a template &lt;br /&gt;ALT+F4 Exit   CTRL+SHIFT+L Make selection lowercase &lt;br /&gt;CTRL+A Select all   CTRL+SHIFT+M Replace template parameters &lt;br /&gt;CTRL+B Move the splitter   CTRL+SHIFT+P Open &lt;br /&gt;CTRL+C Copy   CTRL+SHIFT+R Remove comment &lt;br /&gt;CTRL+D Display results in grid format   CTRL+SHIFT+S Show client statistics &lt;br /&gt;CTRL+Delete Delete through the end of the line   CTRL+SHIFT+T Show server trace &lt;br /&gt;CTRL+E Execute query   CTRL+SHIFT+U Make selection uppercase &lt;br /&gt;CTRL+F Find   CTRL+T Display results in text format &lt;br /&gt;CTRL+F2 Insert/remove bookmark   CTRL+U Change database &lt;br /&gt;CTRL+F4 Disconnect   CTRL+V Paste &lt;br /&gt;CTRL+F5 Parse query and check syntax   CTRL+W Window selector &lt;br /&gt;CTRL+G Go to line   CTRL+X Delete &lt;br /&gt;CTRL+H Replace   CTRL+Z Undo &lt;br /&gt;CTRL+I Index Tuning Wizard   F1 Help for Query Analyzer &lt;br /&gt;CTRL+K Display/hide execution plan   F2 Move to next bookmark &lt;br /&gt;CTRL+L Display execution plan   F3 Repeat last search &lt;br /&gt;CTRL+N New query window   F4 Object Search &lt;br /&gt;CTRL+O Connect   F5 Execute a query &lt;br /&gt;CTRL+P Print   F6 Switch between query and result panes &lt;br /&gt;CTRL+R Show/Hide results pane   F8 Show/hide Object Browser &lt;br /&gt;CTRL+S Save   SHIFT+F1 Transact-SQL help &lt;br /&gt;CTRL+SHIFT+0 Show options   SHIFT+F2 Move to previous bookmark &lt;br /&gt;CTRL+SHIFT+C Comment out code   SHIFT+TAB Decrease indent &lt;br /&gt;CTRL+SHIFT+DEL Clear the active Editor pane   SHIFT+F6 Switch panes &lt;br /&gt;CTRL+SHIFT+F Save results to file   TAB Increase indent&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-2995100609007816241?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/2995100609007816241/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=2995100609007816241' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/2995100609007816241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/2995100609007816241'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/06/sql-server-query-analyzer-shortcuts.html' title='SQL SERVER - Query Analyzer Shortcuts'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-8384528081961211865</id><published>2008-06-27T00:23:00.000-07:00</published><updated>2008-06-27T00:28:41.203-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Jagannath Karmakar'/><title type='text'>Query for Display second max salary of Employee</title><content type='html'>select * from newemployee  em where&lt;br /&gt;2=(select count(distinct sal) from newemployee e where e.sal&lt;=em.sal).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-8384528081961211865?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/8384528081961211865/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=8384528081961211865' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/8384528081961211865'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/8384528081961211865'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/06/query-for-display-second-max-salary-of.html' title='Query for Display second max salary of Employee'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-3968597917530802402</id><published>2008-06-26T06:43:00.000-07:00</published><updated>2008-06-26T06:45:08.620-07:00</updated><title type='text'>How we can count duplicate entery in particular table against Primary Key ? What are constraints?</title><content type='html'>The syntax in the previous answer (where count(*) &gt; 1) is very questionable. suppose you think that you have duplicate employee numbers. there's no need to count them to find out which values were duplicate but the followin SQL will show only the empnos that are duplicate and how many exist in the table:&lt;br /&gt;&lt;br /&gt;Select empno, count(*)&lt;br /&gt;&lt;br /&gt;from employee&lt;br /&gt;&lt;br /&gt;group by empno&lt;br /&gt;&lt;br /&gt;having count(*) &gt; 1&lt;br /&gt;&lt;br /&gt;Generally speaking aggregate functions (count, sum, avg etc.) go in the HAVING clause. I know some systems allow them in the WHERE clause but you must be very careful in interpreting the result. WHERE COUNT(*) &gt; 1 will absolutely NOT work in DB2 or ORACLE.&lt;br /&gt; Sybase and SQLServer is a different animal.&lt;br /&gt;&lt;br /&gt;  Posed By:Jagannath Karmakar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-3968597917530802402?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/3968597917530802402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=3968597917530802402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3968597917530802402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/3968597917530802402'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/06/how-we-can-count-duplicate-entery-in.html' title='How we can count duplicate entery in particular table against Primary Key ? What are constraints?'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-8261679011115034828</id><published>2008-06-26T04:04:00.000-07:00</published><updated>2008-06-26T04:08:36.221-07:00</updated><title type='text'>Delete Duplicate Rows using Single Line Sql</title><content type='html'>with t as (select row_number()over(partition by asid,imagepath order by asid) as rnum  from amz_image)&lt;br /&gt; delete from t where rnum&gt;1&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-8261679011115034828?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/8261679011115034828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=8261679011115034828' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/8261679011115034828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/8261679011115034828'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/06/delete-duplicate-rows-using-single-line.html' title='Delete Duplicate Rows using Single Line Sql'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-1663754887155003244</id><published>2008-05-14T04:12:00.000-07:00</published><updated>2008-05-14T04:22:19.483-07:00</updated><title type='text'>How does the server identify a browser ?</title><content type='html'>The first time when a browser request a page, server establishes a session and creates a session Id. Server returns this ID to the browser as part of the 'Response'. This ID is not displayed to the user. Browser will keep this internally. There are cases where this Session ID can be visible to the users. Visit &lt;a href="http://www.homedepot.com/" target="_blank"&gt;HomeDepot.com&lt;/a&gt; and hit any link from the home page. Then check the URL in the browser. You can see a string like BV_SessionID=@@@@0941891585.1123945660@@@@. This number represents the session id. This particular site sends the session id as a query string in the URL. If you delete this session id from the url, server will treat it as a new session and will create a new session. But ideally, in a ASP.NET web site, there is no need to make the session id publicly visible. Server can keep it internally and send to server without annoying you.After the browser gets a session ID, it will send the session ID to the server along with each additional page requests it makes. The webserver can identify the sessions using this Id. For some reason, if the session times out, then this ID will be no longer valid. In such cases, server will create a new session and will treat this request as a new request.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-1663754887155003244?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/1663754887155003244/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=1663754887155003244' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1663754887155003244'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1663754887155003244'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/05/how-does-server-identify-browser.html' title='How does the server identify a browser ?'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-1716126492637569118</id><published>2008-05-13T06:28:00.000-07:00</published><updated>2008-05-13T06:32:32.932-07:00</updated><title type='text'>SQL SERVER - Import CSV File Into SQL Server Using Bulk Insert - Load Comma Delimited File Into SQL Server</title><content type='html'>This is very common request recently - How to import CSV file into SQL Server? How to load CSV file into SQL Server Database Table? How to load comma delimited file into SQL Server? Let us see the solution in quick steps.&lt;br /&gt;CSV stands for Comma Separated Values, sometimes also called Comma Delimited Values.&lt;br /&gt;Create TestTableUSE TestData&lt;br /&gt;GO&lt;br /&gt;CREATE TABLE CSVTest&lt;br /&gt;    (ID INT,&lt;br /&gt;                FirstName VARCHAR(40),&lt;br /&gt;                LastName VARCHAR(40),&lt;br /&gt;                BirthDate SMALLDATETIME)&lt;br /&gt;GO&lt;br /&gt;Create CSV file in drive C: with name csvtest.txt with following content. The location of the file is C:\csvtest.txt1,James,Smith,19750101&lt;br /&gt;2,Meggie,Smith,19790122&lt;br /&gt;3,Robert,Smith,20071101&lt;br /&gt;4,Alex,Smith,20040202&lt;br /&gt;&lt;br /&gt;BULK&lt;br /&gt;INSERT CSVTest&lt;br /&gt;        FROM ‘c:\csvtest.txt’&lt;br /&gt;            WITH&lt;br /&gt;    (&lt;br /&gt;                FIELDTERMINATOR = ‘,’,&lt;br /&gt;                ROWTERMINATOR = ‘\n’&lt;br /&gt;    )&lt;br /&gt;GO&lt;br /&gt;Check the content of the table.SELECT *&lt;br /&gt;    FROM CSVTest&lt;br /&gt;GO&lt;br /&gt;Drop the table to clean up database.SELECT *&lt;br /&gt;    FROM CSVTest&lt;br /&gt;GO&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-1716126492637569118?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/1716126492637569118/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=1716126492637569118' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1716126492637569118'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1716126492637569118'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/05/sql-server-import-csv-file-into-sql.html' title='SQL SERVER - Import CSV File Into SQL Server Using Bulk Insert - Load Comma Delimited File Into SQL Server'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-1118266241755716319</id><published>2008-05-13T06:13:00.000-07:00</published><updated>2008-05-13T06:14:49.279-07:00</updated><title type='text'>SQL to Select a random row from a database table</title><content type='html'>There are lots of ways to select a random record or row from a database table. Here are some example SQL statements that don't require additional application logic, but each database server requires different SQL syntax.&lt;br /&gt;Select a random row with MySQL:SELECT column FROM table&lt;br /&gt;ORDER BY RAND()&lt;br /&gt;LIMIT 1&lt;br /&gt;Select a random row with PostgreSQL:SELECT column FROM table&lt;br /&gt;ORDER BY RANDOM()&lt;br /&gt;LIMIT 1&lt;br /&gt;Select a random row with Microsoft SQL Server:SELECT TOP 1 column FROM table&lt;br /&gt;ORDER BY NEWID()&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-1118266241755716319?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/1118266241755716319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=1118266241755716319' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1118266241755716319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/1118266241755716319'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/05/sql-to-select-random-row-from-database.html' title='SQL to Select a random row from a database table'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-3735690207062512224.post-5147233845084155132</id><published>2008-05-13T03:19:00.000-07:00</published><updated>2008-05-13T03:20:12.533-07:00</updated><title type='text'>test</title><content type='html'>hi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/3735690207062512224-5147233845084155132?l=dotnethorizon.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://dotnethorizon.blogspot.com/feeds/5147233845084155132/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=3735690207062512224&amp;postID=5147233845084155132' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/5147233845084155132'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/3735690207062512224/posts/default/5147233845084155132'/><link rel='alternate' type='text/html' href='http://dotnethorizon.blogspot.com/2008/05/test.html' title='test'/><author><name>Myblog</name><uri>http://www.blogger.com/profile/05306674288836999618</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://bp2.blogger.com/_8u-bCLVHRrY/SCrZ0OTur7I/AAAAAAAAAAM/BZr4ympznJM/S220/untitled.bmp'/></author><thr:total>2</thr:total></entry></feed>
