<?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-2400635795710127553</id><updated>2011-11-27T16:43:23.862-08:00</updated><category term='Cloud Computing Threats'/><category term='Sharepoint Context Menu'/><category term='Report Manager'/><category term='SQL'/><category term='Hyperlinks'/><category term='SQL Server 2005 Remote Access'/><category term='Default database'/><category term='Content Types'/><category term='Parent Header for GridView'/><category term='Update Panel'/><category term='Report Control'/><category term='ASP.Net Report Viewer'/><category term='Photoshop'/><category term='Performance Optimization'/><category term='Background Color for Cell'/><category term='Javascript Validation for controls in GridView Row'/><category term='Vijay Pias'/><category term='Internet Information Services'/><category term='Event Viewer'/><category term='FTP'/><category term='Web Part'/><category term='MOSS'/><category term='GenericResources.resources'/><category term='Assembly Version Issues'/><category term='Enterprise Library 4.1'/><category term='All Folders'/><category term='Save images in SQL Server'/><category term='Adobe'/><category term='CDO.Message'/><category term='Transaction Scope'/><category term='jQuery'/><category term='Add Reference'/><category term='CSS'/><category term='.Net Reports'/><category term='PDF'/><category term='Grouping Gridview Header ASP.Net'/><category term='Javascript'/><category term='SQL Server 2005'/><category term='Web.config'/><category term='Repository Factory'/><category term='Previous Page'/><category term='MOSS Development'/><category term='Setting Transaction Scope'/><category term='SMTP Mail Sending Remote Host'/><category term='IIS'/><category term='WSS'/><category term='Gridview Control  Footer'/><category term='ASP.Net Ajax'/><category term='ASP.Net Menu Control IE 8'/><category term='Validation Controls'/><category term='Split String in Stored Procedure'/><category term='SSAS'/><category term='SSRS'/><category term='thumbnail on the fly'/><category term='Microsoft.Practices.Repository'/><category term='ITTI Pvt. Ltd.'/><category term='ASP.Net'/><category term='WebConfig settings for Sharepoint (WSS and MOSS Portals)'/><category term='MDX'/><category term='SharePoint Server 2007'/><category term='System.Transactions'/><category term='IIS 7'/><category term='ASP.Net 2.0'/><category term='Error 4064'/><category term='Loop through Folders'/><category term='SQL Server'/><category term='ASP 3.0'/><category term='Navigation'/><category term='Remote Connection'/><category term='Export Excel'/><category term='Iterating through a List'/><category term='Menu Alignment'/><category term='Generic Handler in ASP.Net'/><category term='Menu Mouse Hover'/><category term='Menu control'/><category term='Link'/><category term='Percentage Calculation'/><category term='AK Sabin'/><category term='Classic ASP'/><category term='Windows 7'/><category term='Report Viewer'/><category term='Dropdown'/><category term='Website'/><category term='SMTP Mail'/><category term='Cross Foresr'/><category term='ASP.Net Application to run on IIS 7.0'/><category term='Send Mail'/><category term='Ad hoc Reports'/><category term='SharePoint Server 2003'/><category term='GridView Row Edit and Update ASP.Net C#'/><category term='DropDown List'/><category term='SQL Server Express Restore'/><category term='Stored Procedures'/><category term='upload image'/><category term='SharePoint Feature'/><category term='WSS 2.0'/><category term='Unable to connect to asp.net development server'/><category term='Application Pool'/><category term='Reporting Services'/><category term='Web Service'/><category term='Adobe Photoshop'/><category term='WSS 3.0'/><category term='Delegates'/><category term='Cross Domains'/><category term='C#'/><category term='SharePoint Server'/><category term='Temporary Table'/><category term='Modal Popup Extender'/><category term='Javascript Rounding to Decimal Places'/><category term='OLAP Cubes'/><category term='Back Button'/><category term='RDLC'/><category term='Validation'/><category term='Configuration settings'/><category term='SPFolder'/><category term='BI'/><category term='WebDev Feature IIS'/><category term='Grid View Control'/><category term='Call .Net web service with Javascript'/><category term='Working Example of Sharepoint Feature'/><category term='Surface Area Configuration'/><title type='text'>Code 32 : AK Sabin Blogs</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>78</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4866474345651739577</id><published>2011-04-25T12:13:00.000-07:00</published><updated>2011-04-25T12:13:38.918-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Cloud Computing Threats'/><title type='text'>Amazon's trouble raises cloud computing doubts</title><content type='html'>&lt;div dir="ltr" style="text-align: left;" trbidi="on"&gt;&lt;br /&gt;Just posting the content of &lt;a href="http://economictimes.indiatimes.com/tech/internet/amazons-trouble-raises-cloud-computing-doubts/articleshow/8075814.cms"&gt;EconomicTimes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The black out at Amazon's EC2 (Elastic Cloud Computing) data centre has cast a shadow over cloud computing, which has been hailed as a sturdy, reliable and inexpensive storage and network solution, especially for small and medium enterprises (SMEs) that cannot afford their own large servers.&lt;br /&gt;&lt;br /&gt;On the early morning of April 21 (Pacific Day Time), Amazon's EC2 data centre in Virginia crashed, taking down with it several popular websites and small businesses that depend on it. These included favoured social networking destinations like Evite, Quora, Reddit and Foursquare, among others. Now, the question is being asked: if an Amazonian cloud giant can crash so badly, what about the rest? Is cloud computing as reliable as we thought?&lt;br /&gt;&lt;br /&gt;"People will now realise that cloud isn't magic like they earlier thought it was," says Lydia Leong, research vice-president and cloud computing expert at technology research and advisory firm Gartner . "They will now realise that cloud is merely about viability and not about continuous availability."&lt;br /&gt;&lt;br /&gt;But that's exactly the kind of marketing pitch that sold cloud computing to many small businesses, including the ever-increasing social networking bandwagon. SMEs are now graduating to the next level of cloud computing, using it not just for storage, but also for active computing purposes like communication, sustaining remote workforces and deploying cloud services like remote IT help, cloud operating systems , and so on. The impact of such an outage, therefore, is felt even more.&lt;br /&gt;&lt;br /&gt;Online businesses affected by the EC2 outage lost that many hours of ad revenues, business opportunities and drops of the precious trust of many loyal followers, a primary pillar of social networking. The losses are hard to quantify.&lt;br /&gt;&lt;br /&gt;"Since Amazon isn't giving a customer list, we can only guess. From what we know, it's probably in millions of dollars," says computer scientist David Alan Grier of the eminent Institute of Electrical and Electronics Engineers ( IEEE )) Society and author of When Computers were Human and Too Soon to Tell: Essays for the End of the Computer Revolution . "The biggest problem, though, could be the loss of confidence in cloud computing. We still don't know why the Virginia data centre failed."&lt;br /&gt;&lt;br /&gt;The EC2 holds incredibly valuable data of Amazon's cloud client companies. And yet, Amazon's Virginia centre is, according to sources, remarkably open and vulnerable, located in an ordinary industrial building near Dulles Airport.&lt;br /&gt;&lt;br /&gt;Although Amazon will probably recover quickly, the event has damaged its credibility. Time will tell how badly. "If Amazon can explain the problem and make a good case for why the damage may not be big, then it will be fine," says Grier. "If not, the work will go elsewhere. Amazon may be a big player, but there are other big players waiting to step into the game." These include the likes of Google , IBM , Cisco, RedHat and Microsoft (whose cloud ads are all over Silicon Valley), to name a few.&lt;br /&gt;&lt;br /&gt;"Amazon's cloud competitors are likely to use this outage as a marketing tool. But it could have happened to anybody," says an ex-HP cloud veteran who currently works at one of Silicon Valley's most promising cloud start-ups, which recently got acquired.&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4866474345651739577?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4866474345651739577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4866474345651739577' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4866474345651739577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4866474345651739577'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2011/04/amazons-trouble-raises-cloud-computing.html' title='Amazon&apos;s trouble raises cloud computing doubts'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4342646287388564081</id><published>2011-01-05T10:20:00.000-08:00</published><updated>2011-01-05T10:20:12.499-08:00</updated><title type='text'>Delegates in JQuery</title><content type='html'>The listener of click event wont be listened by the straight approach like the following when you dynamically create the html part and append to the existing elements of a page. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;$('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;btnEdit&lt;/span&gt;').&lt;span class="Apple-style-span" style="color: blue;"&gt;click&lt;/span&gt;(function(){&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Say, when a row is appended to an existing table element(With a hyperlink in each row to edit the row item)  on a click event, the edit row event of the row cant be managed by the following syntax&lt;br /&gt;&lt;br /&gt;&lt;b&gt;$('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;btnEdit&lt;/span&gt;').&lt;span class="Apple-style-span" style="color: blue;"&gt;click&lt;/span&gt;(function(){&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Here you play with delegate. &lt;br /&gt;&lt;br /&gt;See, on click of an html button control, you are adding a row to the existing table (Id="") at the end of the rows like the following.&lt;br /&gt;&lt;br /&gt;&lt;script language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/lang-css.js" type="text/javascript"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;function addLoadEvent(func) {  var oldonload = window.onload;  if (typeof window.onload != 'function') {    window.onload = func;  } else {    window.onload = function() {      if (oldonload) {        oldonload();      }      func();    }  }}addLoadEvent(prettyPrint);&lt;/script&gt;&lt;br /&gt;&lt;style type="text/css"&gt;/* Pretty printing styles. Used with prettify.js. */.str { color: #080; }.kwd { color: #008; }.com { color: #800; }.typ { color: #606; }.lit { color: #066; }.pun { color: #660; }.pln { color: #000; }.tag { color: #008; }.atn { color: #606; }.atv { color: #080; }.dec { color: #606; }pre.prettyprint { padding: 0px; border: 1px solid #888; }@media print {  .str { color: #060; }  .kwd { color: #006; font-weight: bold; }  .com { color: #600; font-style: italic; }  .typ { color: #404; font-weight: bold; }  .lit { color: #044; }  .pun { color: #440; }  .pln { color: #000; }  .tag { color: #006; font-weight: bold; }  .atn { color: #404; }  .atv { color: #060; }}&lt;/style&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;b&gt;$('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;btnAdd&lt;/span&gt;').&lt;span class="Apple-style-span" style="color: blue;"&gt;click&lt;/span&gt;(function(){&lt;/b&gt;&lt;br /&gt;$('#TableOne &amp;gt; tbody:last').append('&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;F13&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;a href="#" class="lnkEdit"&amp;gt;Edit&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;a href="#" class="lnkRemove"&amp;gt;[X]&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;');&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;The row contains three TD elements, which includes a hyperlnk to edit the row and another to delete the added row. &lt;br /&gt;&lt;br /&gt;&lt;b&gt; $('#btnAdd').click(function(){&lt;/b&gt;&lt;br /&gt;$('#TableOne &amp;gt; tbody:last').append('&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;F13&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;a href="#" class="lnkEdit"&amp;gt;Edit&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;a href="#" class="lnkRemove"&amp;gt;[X]&amp;lt;/a&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;');&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;Edit event can be captured here as following&lt;br /&gt;&lt;br /&gt;&lt;b&gt; $('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;TableOne&lt;/span&gt;').delegate('a.lnkEdit', '&lt;span class="Apple-style-span" style="color: blue;"&gt;click&lt;/span&gt;', function(){&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt; $(&lt;span class="Apple-style-span" style="color: blue;"&gt;this&lt;/span&gt;).closest("tr").&lt;span class="Apple-style-span" style="color: blue;"&gt;each&lt;/span&gt;(function() {&lt;/b&gt;&lt;br /&gt;var tr = $(this);&lt;br /&gt;var column = 1;&lt;br /&gt;$('td', tr).each(function(index, value) {  &lt;br /&gt;var td = $(this);  &lt;br /&gt;alert(td.text());&lt;br /&gt;column++ ;&lt;br /&gt;var txttd = $("input:text", td).each(function(){&lt;br /&gt;alert($(this).val());&lt;br /&gt;});&lt;br /&gt;});       &lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The Delete click can be handled here&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;b&gt;$('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;TableOne&lt;/span&gt;').delegate('a.lnkRemove', '&lt;span class="Apple-style-span" style="color: blue;"&gt;click&lt;/span&gt;', function(){&lt;/b&gt;&lt;br /&gt;$(this).closest("tr").remove();&lt;br /&gt;});&lt;/code&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;Can add the content into the DIV like this&lt;/code&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;$('#dvEdit').after('&amp;lt;b&amp;gt;ADDING HERE&amp;lt;/b&amp;gt;');&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;Here follows the HTML part&lt;br /&gt;&lt;br /&gt;&amp;lt;table id="TableOne" class="TableOne" cellspacing="1" border="0" bgcolor="#f1f1f1"&amp;gt;&lt;br /&gt;&amp;lt;tr&amp;gt;&amp;nbsp;&amp;lt;td&amp;gt;&lt;br /&gt;&amp;lt;input type="text" class="txtbox" /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F12&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F13&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;/tr&amp;gt;&amp;nbsp;&amp;lt;tr&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;&amp;lt;input type="text" class="txtbox" /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F22&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F23&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;/tr&amp;gt;&amp;nbsp;&amp;lt;tr&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;&amp;lt;input type="text" class="txtbox" /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F32&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;td&amp;gt;&amp;nbsp;F33&amp;lt;/td&amp;gt;&lt;br /&gt;&amp;lt;/tr&amp;gt;&amp;nbsp;&amp;lt;/table&amp;gt;&lt;br /&gt;&amp;lt;div id="dvEdit" class="dvEdit"&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;input type="button" value="Get" id="btnGet" class="btnGet"/&amp;gt;&lt;br /&gt;&amp;lt;input type="button" value="Add" id="btnAdd" class="btnAdd" /&amp;gt;&lt;br /&gt;&lt;br /&gt;Just a CSS tip too, to beautify the table. &lt;br /&gt;&lt;br /&gt;&lt;b&gt; $('#&lt;span class="Apple-style-span" style="color: #cc0000;"&gt;TableOne &lt;/span&gt;tr').&lt;span class="Apple-style-span" style="color: blue;"&gt;each&lt;/span&gt;(function() {     &lt;/b&gt;&lt;br /&gt;var tr = $(this);       &lt;br /&gt;$('td', tr).each(function() {  &lt;br /&gt;var td = $(this);  &lt;br /&gt;$(this).addClass("tdbg");&lt;br /&gt;$(this).attr("width", "200px");&lt;br /&gt;});       &lt;br /&gt;});&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4342646287388564081?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4342646287388564081/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4342646287388564081' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4342646287388564081'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4342646287388564081'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2011/01/delegates-in-jquery.html' title='Delegates in JQuery'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7750315388312951986</id><published>2011-01-01T07:04:00.000-08:00</published><updated>2011-01-01T07:04:47.572-08:00</updated><title type='text'>JQuery: Add, Deete Rows, Validate the controls of added rows of a Table</title><content type='html'>What if the new rows with controls has to be added dynamically and deleted on button clicks and those controls have to be validated before submitting to the server. JQuery is the easiest way to add/remove at the client side dynamically. &lt;br /&gt;&lt;br /&gt;Have a sneak peek here. &lt;br /&gt;&lt;Script Language='Javascript'&gt;&lt;!-- HTML Encryption provided by iWEBTOOL.com --&gt;&lt;!--document.write(unescape('%3C%68%74%6D%6C%20%78%6D%6C%6E%73%3D%22%68%74%74%70%3A%2F%2F%77%77%77%2E%77%33%2E%6F%72%67%2F%31%39%39%39%2F%78%68%74%6D%6C%22%3E%0A%3C%68%65%61%64%20%72%75%6E%61%74%3D%22%73%65%72%76%65%72%22%3E%0A%3C%74%69%74%6C%65%3E%4A%51%75%65%72%79%20%50%61%67%65%3C%2F%74%69%74%6C%65%3E%0A%3C%2F%68%65%61%64%3E%0A%3C%62%6F%64%79%3E%0A%20%20%20%20%20%3C%74%61%62%6C%65%20%69%64%3D%22%74%61%62%6C%65%69%64%22%20%62%6F%72%64%65%72%3D%22%31%22%20%63%6C%61%73%73%3D%22%74%61%62%6C%65%69%64%22%3E%0A%20%20%20%20%20%20%3C%74%68%65%61%64%3E%0A%20%20%20%20%20%20%3C%74%72%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%20%62%67%63%6F%6C%6F%72%3D%22%23%66%31%66%31%66%31%22%3E%48%65%61%64%65%72%20%31%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%20%62%67%63%6F%6C%6F%72%3D%22%23%66%31%66%31%66%31%22%3E%48%65%61%64%65%72%20%32%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%72%3E%0A%20%20%20%20%20%20%20%20%3C%74%72%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%32%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%72%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%68%65%61%64%3E%0A%20%20%20%20%20%20%20%20%3C%74%62%6F%64%79%3E%0A%20%20%20%20%20%20%20%20%3C%74%72%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%32%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%72%3E%0A%20%20%20%20%20%20%20%20%3C%74%72%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%20%20%20%20%3C%74%64%3E%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%74%65%78%74%22%20%63%6C%61%73%73%3D%22%72%65%71%75%69%72%65%64%46%69%65%6C%64%22%20%2F%3E%3C%2F%74%64%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%72%3E%0A%20%20%20%20%20%20%20%20%3C%2F%74%62%6F%64%79%3E%0A%20%20%20%20%3C%2F%74%61%62%6C%65%3E%20%0A%20%20%20%20%3C%64%69%76%20%69%64%3D%22%64%69%73%70%4D%73%67%22%20%73%74%79%6C%65%3D%22%63%6F%6C%6F%72%3A%52%65%64%3B%22%3E%3C%2F%64%69%76%3E%0A%20%20%20%20%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%62%75%74%74%6F%6E%22%20%63%6C%61%73%73%3D%22%74%78%74%62%6F%78%22%20%76%61%6C%75%65%3D%22%56%61%6C%69%64%61%74%65%22%20%6F%6E%63%6C%69%63%6B%3D%22%6A%61%76%61%73%63%72%69%70%74%3A%43%61%6C%6C%54%68%69%73%28%29%3B%22%20%73%74%79%6C%65%3D%22%62%61%63%6B%67%72%6F%75%6E%64%2D%63%6F%6C%6F%72%3A%62%6C%75%65%3B%22%2F%3E%0A%20%20%20%20%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%62%75%74%74%6F%6E%22%20%69%64%3D%22%62%74%6E%54%65%73%74%22%20%76%61%6C%75%65%3D%22%41%64%64%22%20%20%73%74%79%6C%65%3D%22%62%61%63%6B%67%72%6F%75%6E%64%2D%63%6F%6C%6F%72%3A%67%72%65%65%6E%3B%22%2F%3E%0A%20%20%20%20%3C%69%6E%70%75%74%20%74%79%70%65%3D%22%62%75%74%74%6F%6E%22%20%69%64%3D%22%62%74%6E%54%65%73%74%32%22%20%76%61%6C%75%65%3D%22%52%65%6D%6F%76%65%22%20%20%73%74%79%6C%65%3D%22%62%61%63%6B%67%72%6F%75%6E%64%2D%63%6F%6C%6F%72%3A%72%65%64%3B%22%2F%3E%0A%3C%2F%62%6F%64%79%3E%0A%3C%2F%68%74%6D%6C%3E'));//--&gt;&lt;/Script&gt;&lt;br /&gt;&lt;br /&gt;Look at the code here&lt;br /&gt;&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/lang-css.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;function addLoadEvent(func) {  var oldonload = window.onload;  if (typeof window.onload != 'function') {    window.onload = func;  } else {    window.onload = function() {      if (oldonload) {        oldonload();      }      func();    }  }}addLoadEvent(prettyPrint);&lt;/script&gt;&lt;br /&gt;&lt;style type="text/css"&gt;/* Pretty printing styles. Used with prettify.js. */.str { color: #080; }.kwd { color: #008; }.com { color: #800; }.typ { color: #606; }.lit { color: #066; }.pun { color: #660; }.pln { color: #000; }.tag { color: #008; }.atn { color: #606; }.atv { color: #080; }.dec { color: #606; }pre.prettyprint { padding: 0px; border: 1px solid #888; }@media print {  .str { color: #060; }  .kwd { color: #006; font-weight: bold; }  .com { color: #600; font-style: italic; }  .typ { color: #404; font-weight: bold; }  .lit { color: #044; }  .pun { color: #440; }  .pln { color: #000; }  .tag { color: #006; font-weight: bold; }  .atn { color: #404; }  .atv { color: #060; }}&lt;/style&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;br /&gt;&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;JQuery Page&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;script src=&amp;quot;js/jquery-1.4.4.min.js&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;.mandatory&lt;br /&gt;{&lt;br /&gt;border: solid 1px red;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;function CallThis()&lt;br /&gt;{&lt;br /&gt;var requiredFields = $(&amp;#039;#tableid&amp;#039;).find(&amp;#039;.requiredField&amp;#039;);&lt;br /&gt;var allFieldsComplete = true;&lt;br /&gt;requiredFields.each(function(index) {&lt;br /&gt;    if (this.value.length == 0) {&lt;br /&gt;        $(this).addClass(&amp;#039;mandatory&amp;#039;);&lt;br /&gt;        allFieldsComplete = false;&lt;br /&gt;    } else {&lt;br /&gt;        //alert(this.value);&lt;br /&gt;        $(this).removeClass(&amp;#039;mandatory&amp;#039;);&lt;br /&gt;    }&lt;br /&gt;});&lt;br /&gt;if(!allFieldsComplete){&lt;br /&gt;   $(&amp;#039;#dispMsg&amp;#039;).html(&amp;#039;Mandatory fields to be entered&amp;#039;); &lt;br /&gt;}&lt;br /&gt;return allFieldsComplete;&lt;br /&gt;    }&lt;br /&gt;    &lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;     &amp;lt;table id=&amp;quot;tableid&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;tableid&amp;quot;&amp;gt;&lt;br /&gt;      &amp;lt;thead&amp;gt;&lt;br /&gt;      &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td bgcolor=&amp;quot;#f1f1f1&amp;quot;&amp;gt;Header 1&amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td bgcolor=&amp;quot;#f1f1f1&amp;quot;&amp;gt;Header 2&amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField2&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;/thead&amp;gt;&lt;br /&gt;        &amp;lt;tbody&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField2&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;tr&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;            &amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;requiredField&amp;quot; /&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;        &amp;lt;/tr&amp;gt;&lt;br /&gt;        &amp;lt;/tbody&amp;gt;&lt;br /&gt;    &amp;lt;/table&amp;gt; &lt;br /&gt;    &amp;lt;div id=&amp;quot;dispMsg&amp;quot; style=&amp;quot;color:Red;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;    &amp;lt;input type=&amp;quot;button&amp;quot; class=&amp;quot;txtbox&amp;quot; value=&amp;quot;Validate&amp;quot; onclick=&amp;quot;javascript:CallThis();&amp;quot; /&amp;gt;&lt;br /&gt;    &amp;lt;input type=&amp;quot;button&amp;quot; id=&amp;quot;btnTest&amp;quot; value=&amp;quot;Add&amp;quot;/&amp;gt;&lt;br /&gt;    &amp;lt;input type=&amp;quot;button&amp;quot; id=&amp;quot;btnTest2&amp;quot; value=&amp;quot;Remove&amp;quot;/&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt;&lt;br /&gt;&lt;br /&gt;    $(&amp;#039;#btnTest&amp;#039;).click(function() {&lt;br /&gt;    $(&amp;#039;#tableid &amp;gt; tbody:last&amp;#039;).append(&amp;#039;&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; id=&amp;quot;txt1&amp;quot; class=&amp;quot;requiredField&amp;quot;/&amp;gt; &amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;yyy&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&amp;#039;);&lt;br /&gt;    });&lt;br /&gt;    $(&amp;#039;#btnTest2&amp;#039;).click(function() {&lt;br /&gt;        $(&amp;#039;#tableid &amp;gt; tbody:last tr:last&amp;#039;).remove();&lt;br /&gt;    });  &lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7750315388312951986?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7750315388312951986/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7750315388312951986' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7750315388312951986'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7750315388312951986'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2011/01/jquery-add-deete-rows-validate-controls.html' title='JQuery: Add, Deete Rows, Validate the controls of added rows of a Table'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3591596632508316852</id><published>2010-12-31T22:01:00.000-08:00</published><updated>2010-12-31T22:02:33.524-08:00</updated><title type='text'>JQuery: Validate all the controls in the rows of a table</title><content type='html'>Validating all the controls of each row of a TABLE element can be done at clientside using jQuery.&lt;br /&gt;&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/lang-css.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;function addLoadEvent(func) {  var oldonload = window.onload;  if (typeof window.onload != 'function') {    window.onload = func;  } else {    window.onload = function() {      if (oldonload) {        oldonload();      }      func();    }  }}addLoadEvent(prettyPrint);&lt;/script&gt;&lt;br /&gt;&lt;style type="text/css"&gt;/* Pretty printing styles. Used with prettify.js. */.str { color: #080; }.kwd { color: #008; }.com { color: #800; }.typ { color: #606; }.lit { color: #066; }.pun { color: #660; }.pln { color: #000; }.tag { color: #008; }.atn { color: #606; }.atv { color: #080; }.dec { color: #606; }pre.prettyprint { padding: 0px; border: 1px solid #888; }@media print {  .str { color: #060; }  .kwd { color: #006; font-weight: bold; }  .com { color: #600; font-style: italic; }  .typ { color: #404; font-weight: bold; }  .lit { color: #044; }  .pun { color: #440; }  .pln { color: #000; }  .tag { color: #006; font-weight: bold; }  .atn { color: #404; }  .atv { color: #060; }}&lt;/style&gt;&lt;br /&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;br /&gt;&amp;lt;html xmlns=&amp;quot;http://www.w3.org/1999/xhtml&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;head runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;title&amp;gt;JQuery Page&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;lt;script src=&amp;quot;js/jquery-1.4.4.min.js&amp;quot; type=&amp;quot;text/javascript&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;lt;style type=&amp;quot;text/css&amp;quot;&amp;gt;&lt;br /&gt;.mandatory&lt;br /&gt;{&lt;br /&gt;border: solid 1px red;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/style&amp;gt;&lt;br /&gt;&amp;lt;script type=&amp;quot;text/javascript&amp;quot;&amp;gt; &lt;br /&gt;function CallThis()&lt;br /&gt;{&lt;br /&gt;var mandatorys = $('#tableid').find('.mandatory');&lt;br /&gt;var allFieldsComplete = true;&lt;br /&gt;mandatorys.each(function(index) {&lt;br /&gt;if (this.value.length == 0) {&lt;br /&gt;$(this).addClass('mandatory');&lt;br /&gt;allFieldsComplete = false;&lt;br /&gt;} else {&lt;br /&gt;//alert(this.value);&lt;br /&gt;$(this).removeClass('mandatory');&lt;br /&gt;}&lt;br /&gt;});&lt;br /&gt;if(!allFieldsComplete){&lt;br /&gt;$('#dispMsg').html('Mandatory fields to be entered'); &lt;br /&gt;}&lt;br /&gt;return allFieldsComplete;&lt;br /&gt;}&lt;br /&gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;lt;table id=&amp;quot;tableid&amp;quot; border=&amp;quot;1&amp;quot; class=&amp;quot;tableid&amp;quot;&amp;gt;&lt;br /&gt;&amp;lt;tr&amp;gt; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;mandatory&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/td&amp;gt; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;mandatory&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt;&lt;br /&gt;&amp;lt;tr&amp;gt; &amp;lt;td&amp;gt;&lt;br /&gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;mandatory&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/td&amp;gt; &lt;br /&gt;&amp;lt;td&amp;gt;&amp;lt;input type=&amp;quot;text&amp;quot; class=&amp;quot;mandatory&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/td&amp;gt; &amp;lt;/tr&amp;gt; &amp;lt;/table&amp;gt; &lt;br /&gt;&amp;lt;div id=&amp;quot;dispMsg&amp;quot; style=&amp;quot;color:Red;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;lt;input type=&amp;quot;button&amp;quot; class=&amp;quot;txtbox&amp;quot; value=&amp;quot;Validate&amp;quot; onclick=&amp;quot;javascript:CallThis();&amp;quot; /&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3591596632508316852?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3591596632508316852/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3591596632508316852' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3591596632508316852'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3591596632508316852'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/12/jquery-validate-all-controls-in-rows-of.html' title='JQuery: Validate all the controls in the rows of a table'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2510581976001501577</id><published>2010-12-29T11:11:00.000-08:00</published><updated>2010-12-29T11:28:40.286-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><title type='text'>How to make ASP.Net Server side Calls from JQuery</title><content type='html'>&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/prettify.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript" language="javascript" src="http://google-code-prettify.googlecode.com/svn/trunk/src/lang-css.js"&gt;&lt;/script&gt;&lt;br /&gt;&lt;script type="text/javascript"&gt;function addLoadEvent(func) {  var oldonload = window.onload;  if (typeof window.onload != 'function') {    window.onload = func;  } else {    window.onload = function() {      if (oldonload) {        oldonload();      }      func();    }  }}addLoadEvent(prettyPrint);&lt;/script&gt;&lt;br /&gt;&lt;style type="text/css"&gt;/* Pretty printing styles. Used with prettify.js. */.str { color: #080; }.kwd { color: #008; }.com { color: #800; }.typ { color: #606; }.lit { color: #066; }.pun { color: #660; }.pln { color: #000; }.tag { color: #008; }.atn { color: #606; }.atv { color: #080; }.dec { color: #606; }pre.prettyprint { padding: 2px; border: 1px solid #888; }@media print {  .str { color: #060; }  .kwd { color: #006; font-weight: bold; }  .com { color: #600; font-style: italic; }  .typ { color: #404; font-weight: bold; }  .lit { color: #044; }  .pun { color: #440; }  .pln { color: #000; }  .tag { color: #006; font-weight: bold; }  .atn { color: #404; }  .atv { color: #060; }}&lt;/style&gt;&lt;br /&gt;&lt;b&gt;Here Comes the WebService.&lt;/b&gt;&lt;br /&gt;Dont forget to add the Namespace: System.Web.Script.Services. (Comes with AJAX Extensions).&lt;br /&gt;(You may face problem while making the server call if the Website you built is not an Ajax Enabled Website.) &lt;br /&gt;&lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;br /&gt;using System;&lt;br /&gt;using System.Web;&lt;br /&gt;using System.Collections;&lt;br /&gt;using System.Web.Services;&lt;br /&gt;using System.Web.Services.Protocols;&lt;br /&gt;using System.Web.Script.Services;&lt;br /&gt;&lt;br /&gt;[WebService(Namespace = "http://tempuri.org/")]&lt;br /&gt;[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]&lt;br /&gt;[ScriptService]&lt;br /&gt;public class ThisService : System.Web.Services.WebService&lt;br /&gt;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public ThisService()&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;//InitializeComponent(); &lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;[WebMethod]&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;public string HelloWorld(string dlaID)&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;{&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;return "Hello World";&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}&lt;br /&gt;}&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Now the .aspx page with Markup.&lt;/b&gt; &lt;br /&gt;Download the latest JQuery file and add to your project and refer. &lt;br /&gt;&lt;code class="prettyprint lang-html"&gt;&lt;br /&gt;&amp;lt;%@ Page Language="C#" AutoEventWireup="true" CodeFile="JQServiceCall.aspx.cs" Inherits="JQServiceCall" %&amp;gt;&lt;br /&gt;&amp;lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&amp;gt;&lt;br /&gt;&amp;lt;html xmlns="http://www.w3.org/1999/xhtml"&amp;gt;&lt;br /&gt;&amp;lt;head id="Head1" runat="server"&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;title&amp;gt;JQuery ASP.Net Page&amp;lt;/title&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;script type="text/javascript" src="Scripts/jquery-1.4.2.min.js" language="javascript"&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;script type="text/javascript" language="javascript"&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;$(document).ready(&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;function() {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;var ID = '49214';&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;$.ajax({&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;type:"POST",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;url:"ThisService.asmx/HelloWorld",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;dataType:"json",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;// data: "{}",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;data:'{"dlaID":' + ID + '}',&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;contentType:"application/json; charset=utf-8",&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;success:function(msg) {&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;if (msg != null) {alert(msg);}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;else {alert('My Message!');&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;}},&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;error:&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;function(xhr) {if (xhr != null) {alert("Error occured \n" + xhr.responseText);}}&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;});});&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;/script&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;/head&amp;gt;&lt;br /&gt;&amp;lt;body&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;form id="form1" runat="server"&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;asp:ScriptManager ID="ScriptManager1" runat="server"&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;/asp:ScriptManager&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;font color="#000000"&amp;gt;User Name :&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;asp:TextBox ID="txtUserName" runat="server"&amp;gt;&amp;lt;/asp:TextBox&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;span id="status"&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;div&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;/div&amp;gt;&lt;br /&gt;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;lt;/form&amp;gt;&lt;br /&gt;&amp;lt;/body&amp;gt;&lt;br /&gt;&amp;lt;/html&amp;gt;&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2510581976001501577?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2510581976001501577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2510581976001501577' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2510581976001501577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2510581976001501577'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/12/how-to-make-aspnet-server-side-calls.html' title='How to make ASP.Net Server side Calls from JQuery'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5688948118598268430</id><published>2010-11-23T23:04:00.000-08:00</published><updated>2010-11-23T23:04:39.417-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microsoft.Practices.Repository'/><category scheme='http://www.blogger.com/atom/ns#' term='GenericResources.resources'/><title type='text'>Microsoft.Practices.Repository : Make sure "GenericResources.resources" was correctly embedded or linked into assembly</title><content type='html'>&lt;span class="Apple-style-span" style="color: #990000;"&gt;Could not find any resources appropriate for the specified culture or the neutral culture. &amp;nbsp;Make sure "GenericResources.resources" was correctly embedded or linked into assembly "Microsoft.Practices.Repository" at compile time, or that all the satellite assemblies required are loadable and fully signed.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This was the error which held my neck for more than two days. We follow &lt;a href="http://repositoryfactory.codeplex.com/releases/view/15058"&gt;&lt;span class="Apple-style-span" style="font-size: large;"&gt;Repository Factory for Visual Studio 2008&lt;/span&gt;&lt;/a&gt; for Data Access Layer Creation (By &lt;a href="http://msdn.microsoft.com/hi-in/practices/default(en-us).aspx"&gt;Microsoft Patterns and Practices&lt;/a&gt;.)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I replaced the ExceptionHandling snippet [throw new RepositoryFailureException(ex);]&lt;br /&gt;with [throw new RepositoryFailureException(ex.Message,ex.InnerException);] in each repository class generated by Repository Factory.&lt;br /&gt;&lt;br /&gt;Did a Find and Replace for the whole DataAccess Project. Then went for a build of all the projects (DataAccess Layer, Business Logic Layer, and Presentation Layer. Then Ran the solution by Setting Startup Page as Finance User Dashboard.&lt;br /&gt;&lt;br /&gt;Error got changed to the following.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This is a very familiar one. Could be some thing wrong either with the Connection String in the Web.config or Failed network connection. :) the parameters mentioned in the Web.Config was pointing a wrong DB.&lt;br /&gt;&lt;br /&gt;See, how vague the initial error was. It didnt have any relation with the actual problem. Be aware of these situations, these can mess up your day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5688948118598268430?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5688948118598268430/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5688948118598268430' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5688948118598268430'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5688948118598268430'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/11/microsoftpracticesrepository-make-sure.html' title='Microsoft.Practices.Repository : Make sure &quot;GenericResources.resources&quot; was correctly embedded or linked into assembly'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1868928962389187745</id><published>2010-11-10T02:25:00.000-08:00</published><updated>2010-11-10T02:27:59.401-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Unable to connect to asp.net development server'/><title type='text'>Resolved : Unable to connect to asp.net development server</title><content type='html'>&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;Working on Visual Studio 2008 and not debugging the website and whenever you run the solution it gives error as "Unable to connect to asp.net development server" ?&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, helvetica, sans-serif; font-size: small;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-size: 13px;"&gt;&lt;b&gt;WebDev.WebServer.EXE&lt;/b&gt; is the process associated with Visual Studio 2008 when you run a project(solution).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, helvetica, sans-serif; font-size: small;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-size: 13px;"&gt;This is located EITHER at&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;&lt;b&gt;C:\Program files\Common files\Microsoft Shared\DevServer\9.0 &amp;nbsp;&lt;/b&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;OR&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;&lt;b&gt;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, helvetica, sans-serif; font-size: small;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-size: 13px;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, helvetica, sans-serif; font-size: small;"&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; font-size: 13px;"&gt;Problem is, your Visual Studio is unable to get attached to this exe, when you try to run the solution due to some reason. Problem with mine was, this executable (&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;WebDev.WebServer.EXE) was corrupted. (There is no method known to identify this exe is corrupted or not). I just replaced this exe with the one i have copied from my colleagues PC where he had installed VS 2008, and was running fine.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;This has helped me in resolving the issue "Unable to connect to asp.net development server" with VS 2008.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="-webkit-border-horizontal-spacing: 1px; -webkit-border-vertical-spacing: 1px; color: #333333; font-family: arial, helvetica, sans-serif; font-size: 13px;"&gt;Have a try.&amp;nbsp;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1868928962389187745?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1868928962389187745/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1868928962389187745' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1868928962389187745'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1868928962389187745'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/11/resolved-unable-to-connect-to-aspnet.html' title='Resolved : Unable to connect to asp.net development server'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7937156633805777171</id><published>2010-09-16T00:30:00.000-07:00</published><updated>2010-11-16T01:32:10.798-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Assembly Version Issues'/><title type='text'>Ajax assembly version conflicts and resolution</title><content type='html'>The following could be faced during your Staging to Production movement or Implementation server.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;System.Web.Script.Services.ScriptMethodAttribute exists in both 'C:\Windows\Microsoft.Net\Framework64\v2.050727\Temporary ASP.Net....'&amp;nbsp;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;and C:\Windows\assembly\GAC_MSIL\System.Web.Extensions\3.5.0.0_...'&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, sans-serif; line-height: 19px;"&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;BindingRedirects&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: #333333; font-family: arial, sans-serif; font-size: 14px; line-height: 19px;"&gt;&lt;strong style="font-size: 1em; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px;"&gt;&lt;br /&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br /&gt;First step is to clear the Temporary ASP.Net folder and try, even then you face the same error message, spend some time in the below described.&lt;br /&gt;&lt;br /&gt;When you build a .NET Framework application against a strong-named assembly, the application uses that version of the assembly at run time by default, even if a new version is available. However, you can configure the application to run against a newer version of the assembly.&lt;br /&gt;&lt;br /&gt;You can redirect more than one assembly version by including multiple elements in a element.&lt;br /&gt;&lt;br /&gt;The following example shows how to redirect one assembly version to another.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: left;"&gt;&lt;a href="http://3.bp.blogspot.com/_4m9ZcVzpFsc/TOJPFqUr4iI/AAAAAAAAFXE/sHZSymDLGE0/s1600/assemblyredirect.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="141" src="http://3.bp.blogspot.com/_4m9ZcVzpFsc/TOJPFqUr4iI/AAAAAAAAFXE/sHZSymDLGE0/s320/assemblyredirect.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-size: x-large;"&gt;Visual Studio 2008 automatically adds binding redirects in the web.config file&lt;/span&gt;&lt;br /&gt;This solves many of the interoperability issues and nothing wrong in creating applications with reference to System.Web.Extensions of older version (v1.0) with VS2008&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7937156633805777171?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7937156633805777171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7937156633805777171' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7937156633805777171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7937156633805777171'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/09/ajax-assembly-version-conflicts-and.html' title='Ajax assembly version conflicts and resolution'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_4m9ZcVzpFsc/TOJPFqUr4iI/AAAAAAAAFXE/sHZSymDLGE0/s72-c/assemblyredirect.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1078994834532377728</id><published>2010-09-01T05:32:00.000-07:00</published><updated>2010-09-01T05:53:18.849-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GridView Row Edit and Update ASP.Net C#'/><title type='text'>Basics; Updating a row item in GridView</title><content type='html'>&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;GridView Row Edit and Update would be one among the basics a .Net fresher programmer to start with.&lt;br /&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&amp;nbsp;&amp;nbsp; CODE BEHIND File&lt;/b&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&amp;nbsp;&amp;nbsp; protected void&lt;/span&gt;&amp;nbsp;GrvCannibalize_&lt;b&gt;RowEditing&lt;/b&gt;(object sender, GridViewEditEventArgs e)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GrvCannibalize.EditIndex = e.NewEditIndex;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;BindCannibaliseGrid();&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;protected void&lt;/span&gt;&amp;nbsp;GrvCannibalize_&lt;b&gt;RowCancelingEdit&lt;/b&gt;(object sender, GridViewCancelEditEventArgs e)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GrvCannibalize.EditIndex = -1;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;BindCannibaliseGrid();&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;protected void&lt;/span&gt;&amp;nbsp;GrvCannibalize_&lt;b&gt;RowUpdating&lt;/b&gt;(object sender, GridViewUpdateEventArgs e)&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TrnFutureSales oEntity = new TrnFutureSales(); &amp;nbsp;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;// Business Entity&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;FutureSalesLogic oLogic = new FutureSalesLogic();&amp;nbsp;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;// Business Logic Layer&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt; &lt;/span&gt;TextBox oWRActual = GrvCannibalize.Rows[e.RowIndex].FindControl("TxtWRActual") as TextBox;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TextBox oWIActual = GrvCannibalize.Rows[e.RowIndex].FindControl("TxtWIActual") as TextBox;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TextBox oCNNActual = GrvCannibalize.Rows[e.RowIndex].FindControl("TxtCNNActual") as TextBox;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HiddenField oFutureSalesId = GrvCannibalize.Rows[e.RowIndex].FindControl("HdnFutureSalesId") as HiddenField;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oEntity.ActualCan = Convert.ToDecimal(oWRActual.Text);&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oEntity.ActualRR = Convert.ToDecimal(oCNNActual.Text);&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oEntity.ActualImpact = Convert.ToDecimal(oWIActual.Text);&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oEntity.FutureSalesId&amp;nbsp;= &amp;nbsp;Convert.ToInt64(oFutureSalesId.Value);&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;span class="Apple-tab-span" style="white-space: pre;"&gt;        &lt;/span&gt;oLogic.UpdateFutureSalesForId(oEntity); &amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;&amp;nbsp;// This method has to be added as yours to update the database.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GrvCannibalize.EditIndex = -1;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;BindCannibaliseGrid();&amp;nbsp;&lt;span class="Apple-style-span" style="color: #38761d;"&gt;// Bind the grid again to load with the new values.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0px;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;b&gt;ASPX (MARK UP) File&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;asp:GridView ID="GrvCannibalize" DataKeyNames="FutureSalesID" runat="server" AutoGenerateColumns="false" EmptyDataText="No Record Found" EmptyDataRowStyle-CssClass="redstar" AllowPaging="true" Width="100%" PageSize="5" ShowFooter="true"&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;OnRowEditing&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;="GrvCannibalize_RowEditing"&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span"&gt;OnRowCancelingEdit&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;="GrvCannibalize_RowCancelingEdit"&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span"&gt;OnRowUpdating&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;="GrvCannibalize_RowUpdating" AutoGenerateEditButton="false"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;&lt;/span&gt;&lt;/b&gt;Columns&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;lt;asp:CommandField ButtonType="Image" ShowEditButton="True" EditImageUrl="~/App_Themes/images/Edit.gif" UpdateImageUrl="~/App_Themes/images/Update.gif" CancelImageUrl="~/App_Themes/images/Cancel.jpeg"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;lt;/&amp;lt;asp:CommandField&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;asp:TemplateField HeaderText="Actual WI"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;ItemTemplate&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;asp:Label ID="LblWIActual" runat="server" Text='&amp;lt;%# Bind("ActualImpact") %&amp;gt;'&amp;gt;&amp;lt;/&amp;lt;asp:Label&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;nbsp;&amp;lt;asp:HiddenField ID="HdnFutureSalesId" runat="server" Value='&amp;lt;%# Eval("FutureSalesID") %&amp;gt;'&amp;gt;&amp;lt;/&amp;lt;asp:HiddenField&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/ItemTemplate&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;nbsp;&amp;lt;EditItemTemplate&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;lt;asp:TextBox ID="TxtWIActual" runat="server" CssClass="txtboxAmount" Text=''&amp;gt;&amp;lt;/&amp;lt;asp:TextBox&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;nbsp;&amp;lt;asp:RequiredFieldValidator ID="RfvWIActual" runat="server" ErrorMessage="Required" CssClass="redstar" Text="Required" ControlToValidate="TxtWIActual"&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;lt;/&amp;lt;asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;lt;/EditItemTemplate&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;/&amp;lt;asp:TemplateField&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;asp:TemplateField HeaderText="Actual WR"&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;ItemTemplate&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;asp:Label ID="LblWRActual" runat="server" Text='&amp;lt;%# Bind("ActualRR") %&amp;gt;'&amp;gt;&amp;lt;/&amp;lt;asp:Label&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;/ItemTemplate&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;lt;EditItemTemplate&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;nbsp;&amp;nbsp;&amp;lt;asp:TextBox ID="TxtWRActual" runat="server" CssClass="txtboxAmount" Text=''&amp;gt;&amp;lt;/&amp;lt;asp:TextBox&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&amp;lt;asp:RequiredFieldValidator ID="RfvWRActual" runat="server" ErrorMessage="Required" CssClass="redstar" Text="Required" ControlToValidate="TxtWRActual"&amp;gt;&amp;lt;/&amp;lt;asp:RequiredFieldValidator&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;span class="Apple-style-span" style="color: #990000;"&gt;&amp;lt;/EditItemTemplate&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;/&amp;lt;asp:TemplateField&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;/Columns&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&amp;lt;/&amp;lt;asp:GridView&amp;gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1078994834532377728?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1078994834532377728/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1078994834532377728' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1078994834532377728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1078994834532377728'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/09/basics-updating-row-item-in-gridview.html' title='Basics; Updating a row item in GridView'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1063614977434276672</id><published>2010-09-01T00:44:00.000-07:00</published><updated>2010-09-01T00:44:06.490-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Javascript Validation for controls in GridView Row'/><title type='text'>Clientside Validation for Controls inside GridView</title><content type='html'>Server Side validations for the Controls inside the Gridview will be bit heavy for the pages havingmore than two gridviews. Javascripts can be used to iterate through the controls inside the particular column of grid. We will have to create a Javascript Two dimensional array to hold both the Server ID and Client ID of the control from the &lt;b&gt;GridView PreRender Even&lt;/b&gt;t. Same can be achieved from &lt;b&gt;GridView RowDataBound Event&lt;/b&gt; also.&lt;br /&gt;&lt;br /&gt;The following PreRender Event registers a Two Dimensional Array with control's Server ID and Client ID.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;protected void &lt;span class="Apple-style-span" style="color: black;"&gt;&lt;b&gt;GrvPostPromotion_RowDataBound&lt;/b&gt;(object sender, GridViewRowEventArgs e)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (e.Row.&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;RowType&lt;/span&gt;&lt;span class="Apple-style-span" style="color: black;"&gt; == DataControlRowType.&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;DataRow&lt;/span&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;ClientScriptManager oCsm = this.Page.ClientScript;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TextBox oGrossSales = e.Row.FindControl("TxtGrossSalesPOP") as TextBox;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TextBox oNetToGross = e.Row.FindControl("TxtNetToGrossPOP") as TextBox;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TextBox oSGM = e.Row.FindControl("TxtPSGMPOP") as TextBox;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCsm.&lt;b&gt;RegisterArrayDeclaration&lt;/b&gt;("TxtGrossSalesPOP", "'" + oGrossSales.ClientID + "'");&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCsm.&lt;b&gt;RegisterArrayDeclaration&lt;/b&gt;("TxtNetToGrossPOP", "'" + oNetToGross.ClientID + "'");&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCsm.&lt;b&gt;RegisterArrayDeclaration&lt;/b&gt;("TxtPSGMPOP", "'" + oSGM.ClientID + "'");&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;b&gt;Your Javascript Validation Function can do the Job like this&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: black;"&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;function&lt;/span&gt; ValidateDraftPostPromoGrid() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var rerunThis = false;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var vFlag = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;var oDisp = document.getElementById('divMessage');&lt;span class="Apple-style-span" style="color: #38761d;"&gt; // DIV, where you display the error message&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;for (i = 0; i &amp;lt; TxtGrossSalesPOP.length; i++) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;var oGrossSales = document.&lt;span class="Apple-style-span" style="color: blue;"&gt;getElementById&lt;/span&gt;(TxtGrossSalesPOP[i])&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (oGrossSales.value == "") {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oGrossSales.className = &lt;span class="Apple-style-span" style="color: #990000;"&gt;"txtboxRedBorder"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oDisp.innerHTML = &lt;span class="Apple-style-span" style="color: #990000;"&gt;"Post Promotion Details is Mandatory "&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;vFlag = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rerunThis = &lt;span class="Apple-style-span" style="color: blue;"&gt;false&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;break;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (isNaN(oGrossSales.value) == &lt;span class="Apple-style-span" style="color: blue;"&gt;false&lt;/span&gt;) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oGrossSales.className =&lt;span class="Apple-style-span" style="color: #990000;"&gt; "txtboxNormal";&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oDisp.innerHTML = "";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rerunThis = true;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;else {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oGrossSales.className =&lt;span class="Apple-style-span" style="color: #990000;"&gt; "txtboxRedBorder";&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oDisp.innerHTML = &lt;span class="Apple-style-span" style="color: #990000;"&gt;"Gross Sales to be entered in numbers ";&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;vFlag = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;rerunThis = &lt;span class="Apple-style-span" style="color: blue;"&gt;false&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;break;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;return &lt;/span&gt;rerunThis;&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1063614977434276672?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1063614977434276672/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1063614977434276672' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1063614977434276672'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1063614977434276672'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/09/clientside-validation-for-controls.html' title='Clientside Validation for Controls inside GridView'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8790420933089505677</id><published>2010-08-31T23:54:00.000-07:00</published><updated>2010-09-01T05:59:36.572-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Grouping Gridview Header ASP.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Parent Header for GridView'/><title type='text'>Grouping/Appending GridView Header</title><content type='html'>&lt;b&gt;GridView header to have a Parent Header(Grouped Header)&lt;/b&gt; is as simple as the following.&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/TH33uOLC7QI/AAAAAAAAFWk/aaibkPTHMeo/s1600/header.JPG" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/TH33uOLC7QI/AAAAAAAAFWk/aaibkPTHMeo/s320/header.JPG" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;protected void&lt;/span&gt; GrvPrePromotion_&lt;span class="Apple-style-span" style="color: blue;"&gt;RowCreated&lt;/span&gt;(object sender, GridViewRowEventArgs e)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (e.Row.&lt;span class="Apple-style-span" style="color: #6fa8dc;"&gt;&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;RowType&lt;/span&gt; &lt;/span&gt;== DataControlRowType.&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;Header&lt;/span&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GridView HeaderGrid = (GridView)sender;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GridViewRow HeaderGridRow = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Insert);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;TableCell HeaderCell = new TableCell();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.Text = "Promotion Product Group";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.ColumnSpan = 3;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.Cells.Add(HeaderCell);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.CssClass = "gridheadtop";&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell = new TableCell();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.Text = "Sales and SGM";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.ColumnSpan = 4;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.Cells.Add(HeaderCell);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell = new TableCell();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.Text = "Special Discount";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.ColumnSpan = 3;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.Cells.Add(HeaderCell);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell = new TableCell();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.Text = "Rebate";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.ColumnSpan = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.Cells.Add(HeaderCell);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell = new TableCell();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.Text = "Free Goods / Prize";&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderCell.ColumnSpan = 1;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;HeaderGridRow.Cells.Add(HeaderCell);&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;GrvPrePromotion.Controls[0].Controls.&lt;span class="Apple-style-span" style="color: #3d85c6;"&gt;AddAt&lt;/span&gt;(0, HeaderGridRow);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&lt;a href="http://aksabin.blogspot.com/2009/11/calculating-percentage-in-aspnet-grid.html"&gt;How to Display/Calculate Total/Percentage in the Gridview footer.&lt;/a&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8790420933089505677?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8790420933089505677/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8790420933089505677' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8790420933089505677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8790420933089505677'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/08/groupingappending-gridview-header.html' title='Grouping/Appending GridView Header'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/TH33uOLC7QI/AAAAAAAAFWk/aaibkPTHMeo/s72-c/header.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7611049215479335218</id><published>2010-08-31T23:31:00.000-07:00</published><updated>2010-08-31T23:38:39.719-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Javascript Rounding to Decimal Places'/><title type='text'>Rounding a number to decimal places, Javascript.</title><content type='html'>As Javascript's Math.Round() cant be directly used to round to decimal places, we should find the workarounds.&lt;br /&gt;Have a look at the following function which does the job.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;function&lt;/span&gt; &lt;b&gt;RoundNumber&lt;/b&gt;(ThisNumber, rlength) { &lt;span class="Apple-style-span" style="color: #38761d;"&gt;// Arguments: number to round, number of decimal places&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;var&lt;/span&gt;&amp;nbsp;RoundedNumber = Math.round(ThisNumber*Math.pow(10,rlength))/Math.pow(10,rlength);&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;return&lt;/span&gt;&amp;nbsp;RoundedNumber&amp;nbsp;; &lt;span class="Apple-style-span" style="color: #38761d;"&gt;// returns the resulting number.&amp;nbsp;&lt;/span&gt;&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7611049215479335218?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7611049215479335218/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7611049215479335218' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7611049215479335218'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7611049215479335218'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/08/rounding-number-to-decimal-places.html' title='Rounding a number to decimal places, Javascript.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1404370223118263682</id><published>2010-08-27T04:24:00.000-07:00</published><updated>2010-08-27T04:30:15.586-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WebConfig settings for Sharepoint (WSS and MOSS Portals)'/><title type='text'>WebConfig settings for Sharepoint (WSS and MOSS Portals)</title><content type='html'>&lt;div&gt;Get Microsoft ASP.NET 2.0 AJAX Extensions 1.0 running on the WFE (WHere the Instance of your WSS/MOSS is running. Open up the Web.config of your WebSite from C:/INETPUB/VIRTUAL DIRECTORIES/WSS/(PORT NUMBER OF YOUR SITE) and do some settings which are required for AJAX to run on your Portal. Web.Config wont have Ajax settings in it even if AJAX is installed on the Server. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;FOR WSS&lt;/div&gt;&lt;div&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/bb861898(office.12).aspx"&gt;http://msdn.microsoft.com/en-us/library/bb861898(office.12).aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;FOR MOSS&lt;/div&gt;&lt;div&gt;&lt;a href="http://zieglers.wordpress.com/2009/02/02/webconfig-entries-for-enabling-ajax-for-sharepoint-2007/"&gt;http://zieglers.wordpress.com/2009/02/02/webconfig-entries-for-enabling-ajax-for-sharepoint-2007/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1404370223118263682?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1404370223118263682/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1404370223118263682' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1404370223118263682'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1404370223118263682'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/08/webconfig-settings-for-sharepoint-wss.html' title='WebConfig settings for Sharepoint (WSS and MOSS Portals)'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8262679623394924707</id><published>2010-08-27T03:05:00.000-07:00</published><updated>2010-08-27T03:08:21.580-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Application to run on IIS 7.0'/><title type='text'>ASP.Net Application to run on IIS 7.0</title><content type='html'>&lt;div&gt;Upgrading an ASP.NET application from IIS 6.0 or lower version to IIS 7.0 will have a lot of work. &lt;b&gt;Microsoft&lt;/b&gt; provides an &lt;b&gt;application that does the settings for your application to run on IIS 7.0&lt;/b&gt;. [&lt;b&gt;Classic ASP.NET Integration Mode&lt;/b&gt; to IIS 7.0 &lt;b&gt;Integrated Mode&lt;/b&gt;]&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IIS 7.0 takes care of migrating the application by using the APPCMD.EXE command line tool to perform the migration. The migration error message contains the command that is executed in command line window (which you must run--right click the Programs\Accessories\Command Prompt icon, and choose "&lt;b&gt;Run as administrator&lt;/b&gt;") in order to instantly migrate your application to Integrated mode.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The format of the migration command is :&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;%windir%\system32\inetsrv\APPCMD.EXE migrate config&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;where &lt;i&gt;Application Path&lt;/i&gt; is the virtual path of the application containing the site name, such as "Default Web Site/app1"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis7/"&gt;http://learn.iis.net/page.aspx/243/aspnet-integration-with-iis7/&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8262679623394924707?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8262679623394924707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8262679623394924707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8262679623394924707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8262679623394924707'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/08/aspnet-application-to-run-on-iis-70.html' title='ASP.Net Application to run on IIS 7.0'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4399157787422101777</id><published>2010-08-02T06:48:00.000-07:00</published><updated>2010-09-02T03:21:49.084-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Delegates'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Iterating through a List'/><title type='text'>Use Delegate to Delete an Item from a List</title><content type='html'>Iterating through the list items is quite a simple task when delegates are in place.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;br /&gt;&lt;span class="Apple-style-span" style="color: blue;"&gt;protected void&lt;/span&gt; GrvUploads_RowCommand(object sender, GridViewCommandEventArgs e)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (e.CommandName.ToString() == &lt;span class="Apple-style-span" style="color: #990000;"&gt;"DeleNow"&lt;/span&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&lt;span class="Apple-style-span" style="background-color: white;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;&lt;span class="Apple-style-span" style="background-color: white;"&gt;List&lt;/span&gt;&lt;/span&gt;&lt;uploadentity&gt; oUploader = Session["UploadedFiles"] as &lt;span class="Apple-style-span" style="color: #0b5394;"&gt;List&lt;/span&gt;&lt;uploadentity&gt;;&lt;/uploadentity&gt;&lt;/uploadentity&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;if (oUploader != null)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oUploader.Remove(oUploader.Find(&lt;b&gt;delegate&lt;/b&gt;(UploadEntity oEntity)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;return (oEntity.UploadID == Convert.ToInt64(e.CommandArgument));&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;));&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Session["UploadedFiles"] = oUploader;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: #0b5394;"&gt;BindUploadGrid();&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/TFbM7BXw0wI/AAAAAAAAFWE/-y0RnxbULa4/s1600/Deligate.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5500809309232091906" src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/TFbM7BXw0wI/AAAAAAAAFWE/-y0RnxbULa4/s400/Deligate.JPG" style="cursor: hand; cursor: pointer; display: block; height: 239px; margin: 0px auto 10px; text-align: center; width: 400px;" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4399157787422101777?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4399157787422101777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4399157787422101777' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4399157787422101777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4399157787422101777'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/08/use-delegate-to-delete-item-from-list.html' title='Use Delegate to Delete an Item from a List'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4m9ZcVzpFsc/TFbM7BXw0wI/AAAAAAAAFWE/-y0RnxbULa4/s72-c/Deligate.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-6195846207230346847</id><published>2010-07-20T10:05:00.000-07:00</published><updated>2010-07-20T10:32:18.650-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Stored Procedures'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server'/><title type='text'>SET NOCOUNT ON, the performance booster</title><content type='html'>We normally use SET NOCOUNT ON in STORED PROCEDURES and TRIGGERS &lt;br /&gt;What does actually SET NOCOUNT ON do? &lt;br /&gt;&lt;br /&gt;When we normally execute a T-SQL statements (INSERT, UPDATE, SELECT, DELETE) in a query window, we see messages that says something like "(20 row(s) affected)" as the response to our query? &lt;br /&gt;&lt;br /&gt;Database's internal architecture processes and displays the status of the execution process. The message display is done by the DONE_IN_PROC which is predefined in the architecture.  Though this is default to SQL Server, this makes a slight difference in performance. Obviously, when a query has lots of T-SQL statements in it to perform, this costs you a lot.&lt;br /&gt;&lt;br /&gt;The DONE_IN_PROC message is pretty useful when we are using the query window to execute the procedure. But it runs unwanted when the web applications are concerned.  Each operation of T-SQL statement will return this internal message (eg, an INSERT, UPDATE, or SET in a WHILE loop) for each step within the Stored Procedure execution cycle. &lt;br /&gt;&lt;br /&gt;So from the web developer perspective, its quite unwanted when he update the files in to production server. Lets have a boost in performance this way.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-6195846207230346847?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/6195846207230346847/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=6195846207230346847' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6195846207230346847'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6195846207230346847'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/set-nocount-on-performance-booster.html' title='SET NOCOUNT ON, the performance booster'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-6821588568084050947</id><published>2010-07-14T21:53:00.000-07:00</published><updated>2010-07-14T22:01:56.373-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='IIS 7'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>ReportViewer not getting displayed on IIS7</title><content type='html'>&lt;div&gt;&lt;b&gt;Symptoms:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Unable to render ReportViewer on ASP.NET Web pages while running on IIS7.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;You have no problem viewing your reports when running on debug mode with your Visual Studio 2005.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;You are able to view your reports on Report Manager but not able to view them on IIS7.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;You encounter JavaScript error when loading your report page with ReportViewer. Image buttons such as calendar appear as red 'X'.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Cause:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;When the ReportViewer control is added to Web Form (.aspx), the&lt;/div&gt;&lt;div&gt;Reserved.ReportViewerWebControl.axd httpHandler is added to System.Web section of the Web.Config file. In IIS7, it should be added under System.Webserver section.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;IIS7 Handler Mappings does not contain Reserved.ReportViewerWebControl.axd httpHandler, and therefore unable to render the ReportViewer elements needed by the JavaSript.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Applies to:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Internet Information Services 7.o (IIS7)&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Microsoft Report Viewer Redistributable 2005&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;Resolution:&lt;/b&gt;&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Open Internet Information Services (IIS) Manager and select your Web application.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Under IIS area, double-click on Handler Mappings icon.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;At the Action pane on your right, click on Add Managed Handler.&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;At the Add Managed Handler dialog, enter the following:&lt;/div&gt;&lt;div&gt;Request path: Reserved.ReportViewerWebControl.axd&lt;/div&gt;&lt;div&gt;Type: Microsoft.Reporting.WebForms.HttpHandler&lt;/div&gt;&lt;div&gt;Name: Reserved-ReportViewerWebControl-axd&lt;/div&gt;&lt;div&gt;•&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Click OK.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Reserved-ReportViewerWebControl-axd handler is now added to your Handler Mappings list. Notice that the following line has also been added to your Web.config file under the system.webserver's handler section:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;add name="Reserved-ReportViewerWebControl-axd" path="Reserved.ReportViewerWebControl.axd"&gt;&lt;/add&gt;&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_4m9ZcVzpFsc/TD6VlowYtCI/AAAAAAAAFVw/hU3osTlR0Hc/s1600/report.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 18px;" src="http://3.bp.blogspot.com/_4m9ZcVzpFsc/TD6VlowYtCI/AAAAAAAAFVw/hU3osTlR0Hc/s400/report.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5493993069266646050" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Run your report now!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;b&gt;&lt;/b&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-6821588568084050947?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/6821588568084050947/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=6821588568084050947' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6821588568084050947'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6821588568084050947'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/reportviewer-not-getting-displayed-on.html' title='ReportViewer not getting displayed on IIS7'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_4m9ZcVzpFsc/TD6VlowYtCI/AAAAAAAAFVw/hU3osTlR0Hc/s72-c/report.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3070833080568112522</id><published>2010-07-13T10:04:00.000-07:00</published><updated>2010-07-13T10:41:40.098-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Menu Control IE 8'/><title type='text'>ASP.Net Menu control not working in IE 8. Hot fix.</title><content type='html'>Almost an year ago when i was struggling with ASP.Net menu controls which were not getting displayed properly on new aged browsers like Google Chrome and IE 8.0 there were no posts available on net in this regard. Though &lt;a href="http://aksabin.blogspot.com/2009/06/menu-control-aspnet-20-is-not.html"&gt;I could come out of Google Chrome's issue with ASP.Net Menu Control&lt;/a&gt;, IE 8.0 issue was left out as it is as my Customer was not at all upgraded to IE 8.0. Luckily I got my head out from it. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;But today, if some one is in trouble on ASP.Net menu with IE 8.0, you have a hot fix file to be installed to get rid of the problems. &lt;b&gt;Microsoft support Center&lt;/b&gt; accepted the issue in IE 8.0 and released a hot fix which available for free download. The &lt;b&gt;&lt;a href="http://support.microsoft.com/kb/962351"&gt;Microsoft Knowledge Base Article&lt;/a&gt;&lt;/b&gt; details this issue. (Click on the link)&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;b&gt;For Windows Vista and Windows Server 2008&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://code.msdn.microsoft.com/KB967535"&gt;http://code.msdn.microsoft.com/KB967535&lt;/a&gt; [Download Link]&lt;/div&gt;&lt;div&gt;&lt;a href="http://support.microsoft.com/kb/967535/"&gt;http://support.microsoft.com/kb/967535/&lt;/a&gt; [ Knowledge Base ]&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;For Windows XP and Windows Server 2003&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://code.msdn.microsoft.com/KB969612"&gt;http://code.msdn.microsoft.com/KB969612&lt;/a&gt; [Download Link]&lt;/div&gt;&lt;div&gt;&lt;a href="http://support.microsoft.com/kb/969612/"&gt;http://support.microsoft.com/kb/969612/&lt;/a&gt; [ Knowledge Base ]&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3070833080568112522?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3070833080568112522/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3070833080568112522' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3070833080568112522'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3070833080568112522'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/aspnet-menu-control-not-working-in-ie-8.html' title='ASP.Net Menu control not working in IE 8. Hot fix.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3430686686898726707</id><published>2010-07-13T07:13:00.000-07:00</published><updated>2010-09-02T03:41:05.540-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web Service'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>A simple Web Service for the beginners; ASP.Net C#</title><content type='html'>&lt;div style="text-align: left;"&gt;WebService Method in App Code folder with a [WebMethod] attribute. Just a normal C# method with [WebMethod] attribute. @RecordCount is an &lt;b&gt;output parameter&lt;/b&gt; returned by the stored procedure.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; [WebMethod]&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;public static Int64 &lt;/span&gt;VerifyDuplicateActivation(Int64 DetailsId)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;Int64 &lt;/span&gt;RecordsCount = 0;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;string &lt;/span&gt;connString = ConfigurationManager.AppSettings[&lt;span class="Apple-style-span" style="color: #990000;"&gt;"DatabaseAnalyzeUAT1"&lt;/span&gt;].ToString();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;SqlConnection &lt;/span&gt;oConn = new &lt;span class="Apple-style-span" style="color: blue;"&gt;SqlConnection&lt;/span&gt;(connString);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;SqlCommand &lt;/span&gt;oCommand = new &lt;span class="Apple-style-span" style="color: blue;"&gt;SqlCommand&lt;/span&gt;();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.Connection = oConn;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.CommandText = &lt;span class="Apple-style-span" style="color: #990000;"&gt;"VerifyTeamActivation"&lt;/span&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.CommandType = CommandType.StoredProcedure;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.Parameters.AddWithValue(&lt;span class="Apple-style-span" style="color: #990000;"&gt;"@DetailsID"&lt;/span&gt;, DetailsId);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.Parameters.Add(&lt;span class="Apple-style-span" style="color: #990000;"&gt;"@RecordCount"&lt;/span&gt;, SqlDbType.BigInt);&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.Parameters[&lt;span class="Apple-style-span" style="color: #990000;"&gt;"@RecordCount"&lt;/span&gt;].Direction = ParameterDirection.Output; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oConn.Open();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;oCommand.ExecuteScalar();&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;RecordsCount = (Int64)oCommand.Parameters[&lt;span class="Apple-style-span" style="color: #990000;"&gt;"@RecordCount"&lt;/span&gt;].Value;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span class="Apple-style-span" style="color: blue;"&gt;return &lt;/span&gt;RecordsCount;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/TDx0vcUmi0I/AAAAAAAAFVY/upLd60cC4cE/s1600/APPCODE.JPG" onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}"&gt;&lt;img alt="" border="0" id="BLOGGER_PHOTO_ID_5493394003890441026" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/TDx0vcUmi0I/AAAAAAAAFVY/upLd60cC4cE/s400/APPCODE.JPG" style="cursor: hand; cursor: pointer; display: block; margin: 0px auto 10px; text-align: center;" /&gt;&lt;/a&gt;&lt;br /&gt;Consuming WebService is just a method call if it is from Server Side.&lt;br /&gt;&lt;div&gt;Int64 RecCount = VerifyForDuplicate(details.DetailsId);&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3430686686898726707?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3430686686898726707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3430686686898726707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3430686686898726707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3430686686898726707'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/web-service-from-appcode-aspnet-c.html' title='A simple Web Service for the beginners; ASP.Net C#'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/TDx0vcUmi0I/AAAAAAAAFVY/upLd60cC4cE/s72-c/APPCODE.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7057837132937784003</id><published>2010-07-07T05:27:00.000-07:00</published><updated>2010-07-07T05:35:50.097-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Repository Factory'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Patterns &amp; Practices: Repository Factory for Data Access Creation</title><content type='html'>&lt;img src="http://repositoryfactory.codeplex.com/Images/pnp_logo.png" style="float:left;padding-right:9px;" /&gt;The Repository Factory is a guidance package that &lt;i&gt;&lt;span class="Apple-style-span"  style="color:#FF0000;"&gt;automates creation of entity classes that map to database tables and repository classes to read and write those entity classes&lt;/span&gt;&lt;/i&gt;. The generated code removes the tedium of writing a persistence-ignorant domain model.&lt;br /&gt;&lt;br /&gt;The Repository Factory is not intended to be a be-all-does-everything ORM solution. Instead, it's a lightweight code generator that automates most of the hand-coding needed to build domain model object and persist them to a database&lt;br /&gt;&lt;br /&gt;&lt;a href="http://repositoryfactory.codeplex.com/"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#3366FF;"&gt;Download it Here&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.bracora.com/Articles/DataAccessLayer.aspx"&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="color:#3366FF;"&gt;How to Create Data Access Layer in ASP.Net with Repository Factory&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7057837132937784003?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7057837132937784003/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7057837132937784003' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7057837132937784003'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7057837132937784003'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/patterns-practices-repository-factory.html' title='Patterns &amp; Practices: Repository Factory for Data Access Creation'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2585161348898081043</id><published>2010-07-07T02:29:00.000-07:00</published><updated>2010-07-07T05:22:00.428-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Performance Optimization'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Never run ASP.NET Applications with debug=”true” enabled in Live Server</title><content type='html'>We, rarely bother about the settings in Web.Config file of our application when moving from Development environment to Production/Live. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;compilation debug="true"&gt; has big impact on the performance of the Web Application/Site.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;When debug is set to true, the following happens in the application scope.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;1) Batch optimizations will be disabled and hence the compilation of pages takes longer&lt;/div&gt;&lt;div&gt;2) Some additional debug paths get enabled which causes for slower execution of code&lt;/div&gt;&lt;div&gt;3) More memory is used within the application at runtime&lt;/div&gt;&lt;div&gt;4) Scripts and images downloaded from the WebResources.axd handler are not cached&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All client-javascript libraries and static images that are deployed via WebResources.axd will be continually downloaded by clients on each page view request and not cached locally within the browser.&lt;br /&gt;&lt;br /&gt;When &lt;compilation debug="”false”/"&gt; is set, the WebResource.axd handler will automatically set a long cache policy on resources retrieved via it – so that the resource is only downloaded once to the client and cached there forever&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2585161348898081043?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2585161348898081043/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2585161348898081043' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2585161348898081043'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2585161348898081043'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/07/never-run-aspnet-applications-with.html' title='Never run ASP.NET Applications with debug=”true” enabled in Live Server'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5970585091697931371</id><published>2010-05-30T10:36:00.000-07:00</published><updated>2010-05-30T10:55:34.481-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Content Types'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server'/><title type='text'>Developing Custom Content Types for SharePoint</title><content type='html'>&lt;b&gt;What could be a &lt;i&gt;Content Type&lt;/i&gt; in SharePoint?&lt;/b&gt;&lt;div&gt;&lt;br /&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   line-height: 18px; font-family:Tahoma;font-size:small;"&gt;&lt;p style="margin-top: 0px; "&gt;A content type is an object that is stored within MOSS that defines several elements of a piece of content, including:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Document Template that the content will be based on&lt;/li&gt;&lt;li&gt;Columns that the content will have associated with it (metadata)&lt;/li&gt;&lt;li&gt;Workflows that the content will use&lt;/li&gt;&lt;li&gt;Information Management policies that apply to the content&lt;/li&gt;&lt;li&gt;Conversion types for the content&lt;/li&gt;&lt;/ul&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Watch this wonderful video to learn about developing it with Visual Studio. Thanks to the author. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;object width="480" height="385"&gt;&lt;param name="movie" value="http://www.youtube.com/v/lUVc2LvL2pw&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/lUVc2LvL2pw&amp;amp;hl=en_US&amp;amp;fs=1&amp;amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="480" height="385"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5970585091697931371?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5970585091697931371/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5970585091697931371' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5970585091697931371'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5970585091697931371'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/05/developing-custom-content-types-for.html' title='Developing Custom Content Types for SharePoint'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8502398939479011356</id><published>2010-05-17T11:05:00.000-07:00</published><updated>2010-05-17T11:17:48.905-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='Event Viewer'/><title type='text'>The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID - MOSS</title><content type='html'>&lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;You may see this error in the &lt;b&gt;EVENT VIEWER&lt;/b&gt; - more than once - when working with your &lt;b&gt;Microsoft Office SharePoint Server (MOSS) 2007 deployment&lt;/b&gt;. This animal / error generally shows itself after you have applied an upgrade to an existing deployment. For example, when upgrading from B2 MOSS to B2TR MOSS - or when applying a special service pack from MSFT - you may begin to see a lot of these errors pop up in the SYSTEM event log.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;The error CLSID is followed by a class ID for the DCOM+ application that the &lt;em&gt;&lt;span style="Trebuchet MS&amp;quot;font-family:&amp;quot;;"&gt;service account&lt;/span&gt;&lt;/em&gt; trying to &lt;em&gt;&lt;span style="Trebuchet MS&amp;quot;font-family:&amp;quot;;"&gt;activate&lt;/span&gt;&lt;/em&gt; that application - does NOT have permission to activate.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;For example, let's say I installed MOSS on a server, and used the account mossService as the &lt;em&gt;&lt;span style="Trebuchet MS&amp;quot;font-family:&amp;quot;;"&gt;service account&lt;/span&gt;&lt;/em&gt; (a least privileged, user account you created to run the MOSS service(s))., when I get this error, I could very well see an error like the following:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="Trebuchet MS&amp;quot;; font-family:&amp;quot;;color:red;"&gt;The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID&lt;/span&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;font-size:7.5pt;color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="Trebuchet MS&amp;quot;; font-family:&amp;quot;;color:red;"&gt;{61738644-F196-11D0-9953-00C04FD919C1}&lt;/span&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;font-size:7.5pt;color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span class="apple-style-span"&gt;&lt;span style="Trebuchet MS&amp;quot;; font-family:&amp;quot;;color:red;"&gt;to the user &lt;servername&gt;\mossService SID (S-1-5-21-&lt;servicesid&gt;). This security permission can be modified using the Component Services administrative tool.&lt;/servicesid&gt;&lt;/servername&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;font-size:7.5pt;color:black;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;Copy the &lt;b&gt;GUID&lt;/b&gt; following the &lt;b&gt;CLSID&lt;/b&gt; above, and go to &lt;b&gt;REGEDIT&lt;br /&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;Start--&gt;Run--&gt;regedit&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;With the registry editor open, ensure that your cursor is on the computer at the beginning of the tree (make sure you are not in the middle of some previous edit session in the registry editor).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;Edit--&gt;&lt;b&gt;Find and paste in the GUID&lt;/b&gt;. It'll stop at the application entry - and you will want to note the application name on the right side pane. In this example, it was the &lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:blue;"&gt;&lt;b&gt;IIS WAMREG admin service&lt;/b&gt; &lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;that popped up.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;Now, open Component Services from the server :-&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Start--&gt;Administrative Tools--&gt;Component Services,&lt;/b&gt;&lt;br /&gt;&lt;br /&gt; &lt;/span&gt;&lt;span style="font-family:&amp;quot;;color:black;"&gt;&lt;b&gt;Expand Component Services&lt;/b&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;, Computers, My Computer, DCOM Config. Scroll down and find the application (IIS WAMREG in this case).&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:&amp;quot;;color:black;"&gt;&lt;b&gt;&lt;br /&gt;Right-Click--&gt;Properties and select the Security tab&lt;/b&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;.&lt;br /&gt;&lt;br /&gt;You'll have some options here - the first block Launch and Activation Permissions - ensure that the &lt;/span&gt;&lt;span style="font-family:&amp;quot;;color:black;"&gt;&lt;b&gt;Customize radio button is selected&lt;/b&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;, and click &lt;/span&gt;&lt;span style="font-family:&amp;quot;;color:black;"&gt;&lt;b&gt;Edit&lt;/b&gt;&lt;/span&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;. Now,&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Add your service account - giving it launch and activate - and in some requirements - remote launch / activate permission.&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="margin-top:8.35pt;margin-right:0in;margin-bottom:8.35pt;margin-left: 0in"&gt;&lt;span style="Trebuchet MS&amp;quot;;font-family:&amp;quot;;color:black;"&gt;&lt;b&gt;Restart IIS&lt;/b&gt; and continue on.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="color:black;"&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;NOTE: This solution is not specific to MOSS, i feel;  hopefully this will help someone else who sees these annoying DCOM errors in WINDOWS EVENT LOG (EVENTVWR).&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8502398939479011356?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8502398939479011356/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8502398939479011356' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8502398939479011356'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8502398939479011356'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/05/application-specific-permission.html' title='The application-specific permission settings do not grant Local Activation permission for the COM Server application with CLSID - MOSS'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3855780420585642531</id><published>2010-04-16T06:39:00.000-07:00</published><updated>2010-04-16T07:09:30.105-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='Classic ASP'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows 7'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS 7'/><title type='text'>Classic ASP on IIS 7, PDF on Windows 7</title><content type='html'>&lt;div&gt;Vijay Pais was back  again on a drowsy afternoon with certain other issues&lt;br /&gt;He was on his way of migrating our Corporate Intranet. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;i&gt;Migration&lt;/i&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Destination Server&lt;/b&gt; : Windows Server 2003, IIS 6.0, Oracle Express&lt;/div&gt;&lt;div&gt;&lt;b&gt;Source Server&lt;/b&gt;: &lt;span class="Apple-style-span"  style="font-size:x-large;"&gt;Windows 7&lt;/span&gt;,&lt;span class="Apple-style-span"  style="font-size:x-large;"&gt; IIS 7.0&lt;/span&gt;, Oracle Express. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;Issue 1: Classic ASP website not running on IIS 7.0.&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;By default, IIS 7.0 runs on Integrated Mode. It has to be changed to Classic for Clasic ASP to Run. And few other steps. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Alex Thissan has already put it on his web log. &lt;/div&gt;&lt;div&gt;&lt;a href="http://www.alexthissen.nl/blogs/main/archive/2008/02/18/running-classic-asp-on-iis-7.aspx"&gt;http://www.alexthissen.nl/blogs/main/archive/2008/02/18/running-classic-asp-on-iis-7.aspx&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;b&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;But issues didnt leave us, were hooked on another interesting thing, &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="font-size:large;"&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;Issue2: PDF files not opening up on Windows 7.&lt;/b&gt;&lt;/span&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;Though the IIS 7 running on Windows 7 is configured for .pdf MIME types, it fails opening up the file. Microsoft accepts this issue in their knowledge base article and suggest a HOTFIX (KB: 979543) as resolution. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://support.microsoft.com/kb/979543"&gt;http://support.microsoft.com/kb/979543&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Requested microsoft for this fix file setup, got it installed and PDFs started opening up. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Happiness was back at faces, as there was minutes left out for the weekend bash. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3855780420585642531?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3855780420585642531/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3855780420585642531' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3855780420585642531'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3855780420585642531'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/04/classic-asp-on-iis-7-pdf-on-windows-7.html' title='Classic ASP on IIS 7, PDF on Windows 7'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4074407399174222690</id><published>2010-04-14T07:43:00.000-07:00</published><updated>2010-04-14T07:52:36.594-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Enterprise Library 4.1'/><title type='text'>The name 'CastDBNull' does not exist in the current context</title><content type='html'>&lt;div&gt;&lt;div&gt;The name CastDBNull does not exist in the current context&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Generating Data Access Layer using Guidance Package for VS2008 ?(ISimpleDomainObjectFactory)? &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;using Microsoft.Practices.EnterpriseLibrary.Data&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Define this in your code. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;public static class CastDBNull&lt;/div&gt;&lt;div&gt;        {&lt;/div&gt;&lt;div&gt;            public static T To&lt;t&gt;(object value, T defaultValue)&lt;/div&gt;&lt;div&gt;            {&lt;/div&gt;&lt;div&gt;                if (value == DBNull.Value) return defaultValue;&lt;/div&gt;&lt;div&gt;                return (T)Convert.ChangeType(value, typeof(T));&lt;/div&gt;&lt;div&gt;            }&lt;/div&gt;&lt;div&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4074407399174222690?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4074407399174222690/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4074407399174222690' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4074407399174222690'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4074407399174222690'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/04/name-castdbnull-does-not-exist-in.html' title='The name &apos;CastDBNull&apos; does not exist in the current context'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-6164565785100921841</id><published>2010-04-11T23:24:00.000-07:00</published><updated>2010-04-12T02:46:51.359-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server Express Restore'/><title type='text'>The media family on device Microsoft SQL Server, Error: 3241</title><content type='html'>&lt;div&gt;&lt;b&gt;The media family on devic&lt;/b&gt;e 'D:\Web_Applications_Sabin\HOF\LPT\HOF_NEW_BACKUP.bak' is incorrectly formed. &lt;b&gt;SQL Server cannot process this media family.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;RESTORE HEADERONLY is terminating abnormally. (Microsoft SQL Server, Error: 3241)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I was trying to restore a database back up on my machine. Back up file was taken from a different machine. Got stuck up with the error. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Later I realised, it was due to the compatibility issue as the Back up was taken from &lt;b&gt;SQL Server 2008 Express&lt;/b&gt; and I was restoring on &lt;b&gt;SQL Server 2005 Express&lt;/b&gt;. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Resolution. &lt;/div&gt;&lt;div&gt;Generate Script (.sql) from the destination server and execute in the source server.&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-6164565785100921841?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/6164565785100921841/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=6164565785100921841' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6164565785100921841'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6164565785100921841'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/04/media-family-on-device-microsoft-sql.html' title='The media family on device Microsoft SQL Server, Error: 3241'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3328664428971816992</id><published>2010-03-25T05:27:00.000-07:00</published><updated>2010-03-25T05:55:16.667-07:00</updated><title type='text'>Setting up MOSS 2007 in a server farm environment</title><content type='html'>&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;Setting up MOSS 2007 in a server farm environment. (A Web Front End Server WFE and a Database Server)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Security account requirements&lt;/b&gt;&lt;/div&gt;&lt;div&gt;To install MOSS 2007 in a server farm environment, at-least 2 accounts are required.&lt;/div&gt;&lt;div&gt;(Only one account required when WFE and Database are on a Single computer. This installation has got a slightly different procedure. Dont follow this instruction for a Single Server Configuration.)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;One as Domain User with Admin power in both the WFE and DB Server. This user should be manually added in to the SQL Server Users from the Management Studio. This should be able to login to SQL Server with Windows authentication should have DB Creator and Security Admin rights on SQL Server. This will be used for Installing MOSS and will be acted as &lt;b&gt;SERVICE ACCOUNT&lt;/b&gt; for all the related services of MOSS.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Do not use&lt;/b&gt; the main domain\administrator account. This causes a problem if ever you wish to install Project Server 2007 on the same machine.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;b&gt;Account 1 (We call it as MOSSADMIN)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;A user account that you can use to install Office SharePoint Server 2007 and run the SharePoint Products and Technologies Configuration Wizard. This account must be:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;A domain user account.&lt;/li&gt;&lt;li&gt;A member of the Administrators group on each of your front-end servers.&lt;/li&gt;&lt;li&gt; A member of the SQL Server Logins, which grants login access to your SQL Server instance.&lt;/li&gt;&lt;li&gt;A member of the SQL Server Database Creator server role, which grants permission to create and alter databases.&lt;/li&gt;&lt;li&gt;A member of the SQL Server Security Administrators server role, which grants permission to manage server logins.&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Account 2 (We Call this as MOSSUSER)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;A unique domain user account that you can specify as the Office SharePoint Server 2007 service account. This user account is used to access your SharePoint configuration database. It also acts as the application pool identity for the SharePoint Central Administration application pool and it is the account under which the Windows SharePoint Services Timer service runs.&lt;br /&gt;&lt;br /&gt;The SharePoint Products and Technologies Configuration Wizard adds this account to the SQL Server Logins (We don’t need to manually add this in to SQL Server, Just provide when MOSS Technologies Configuration wizard asks), the SQL Server Database Creator server role, and the SQL Server Security Administrators server role. It is recommended that you follow the principle of least privilege and do not make this user account a member of any particular security group on your front-end servers or your back-end servers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;SQL Server Installation.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;This has to be a different server.&lt;/div&gt;&lt;div&gt;(Preferably, SQL Server 2005 should be installed with Local System account (Local Administrator of that machine). If you install it with Domain Admin User, SQL Server uses Kerberos Security. I don’t prefer this as MOSS Configuration Wizard’s default installation would be on NTLM, not Kerberos. So, I just login as Local System Admin for installation rather than going with domain Admin.)&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Select Database Engine and Analysis Services in the Wizard, No need of selecting the other features like integration Services. Click Advanced, Select Client Component Tools (This is for getting the Management Studio). Service pack 3 is a must for SQL Server for MOSS. Open up Management Studio and add the Service account in to the Users, assign permissions as DB Creator and Security Admin rights on SQL Server.&lt;/div&gt;&lt;div&gt;Log off from DB Server if you are logged in as LOCAL ADMIN and Login as MOSSADMIN and Connect to Database Engine through SQL Server Management Studio with Windows Authentication. Give DB Creator and Security Admin roles to this user .&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Make sure that Collation settings is of Latin1_General_CI_AS_KS_WS&lt;/div&gt;&lt;div&gt;Enable the remote connection to the SQL Server through Serface Area Configuration wizard. Click Surface Area Configuration for Services and Connections. Select Remote Connections&lt;/div&gt;&lt;div&gt;Read out these carefully to prepare a new DB Server for MOSS&lt;/div&gt;&lt;div&gt;http://technet.microsoft.com/en-us/library/cc263187.aspx&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Configure surface area settings in SQL Server 2005&lt;br /&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;1. Click Start, point to All Programs, point to Microsoft SQL Server 2005, point to Configuration Tools, and then click SQL Server Surface Area Configuration.&lt;/div&gt;&lt;div&gt;2. In the SQL Server Surface Area Configuration dialog box, click Surface Area Configuration for Services and Connections.&lt;/div&gt;&lt;div&gt;3. In the tree, open your instance of SQL Server, open Database Engine, and then click Remote Connections.&lt;/div&gt;&lt;div&gt;4. Click Local and Remote Connections, click Using both TCP/IP and named pipes, and then click OK&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;How do i know the Version of SharePoint installed on my server?&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To check this on a moss installed server, go to Central Administration(CA) &gt; Operations &gt; Servers in the farm. You can see the version of the MOSS there.&lt;/div&gt;&lt;div&gt;Also, To know the Edition of MOSS(Standard/Enterprise) you installed&lt;/div&gt;&lt;div&gt;Go to the Central administration -&gt; Operations-&gt; Enable Enterprise features. This will show you whether it is standard or enterprise. If it is enterprise edition, Button would be disabled.&lt;/div&gt;&lt;div&gt;Name&lt;/div&gt;&lt;div&gt;Version&lt;/div&gt;&lt;div&gt;MOSS 2007/WSS 3.0 Service Pack 1 (Contains the below)&lt;/div&gt;&lt;div&gt;12.0.0.6219&lt;/div&gt;&lt;div&gt;MOSS 2007/WSS 3.0 October 2007 Public Update&lt;/div&gt;&lt;div&gt;12.0.0.6039&lt;/div&gt;&lt;div&gt;MOSS 2007/WSS 3.0 August 2007 Hotfix&lt;/div&gt;&lt;div&gt;12.0.0.6036&lt;/div&gt;&lt;div&gt;MOSS 2007/WSS 3.0 RTM&lt;/div&gt;&lt;div&gt;12.0.0.4518&lt;/div&gt;&lt;div&gt;Framework 2.0 and 3.0 on the front end server (Where MOSS is going to be installed)&lt;/div&gt;&lt;div&gt;IIS on the Front end server with the rights&lt;/div&gt;&lt;div&gt;As the front end server runs with Windows Server 2008 Operating system(OS), Installing and configuring will not be as easy as on a 2003 OS.&lt;/div&gt;&lt;div&gt;For installing IIS refer http://learn.iis.net/page.aspx/29/install-iis-7-on-windows-server-2008-or-windows-server-2008-r2/&lt;/div&gt;&lt;div&gt;IIS 7 will get installed with .Net Framework 2.0. We need Framework 3.0 also to be installed on Moss WFE. Go to IIS Manager, Application Pools and see the version of Framework version in the right pane.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;IIS Isolation mode settings (IF IIS 6.0)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;1. Click Start, point to All Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.&lt;/div&gt;&lt;div&gt;2. In the IIS Manager tree, click the plus sign ( ) next to the server name, and then right-click the Web Sites folder and select Properties.&lt;/div&gt;&lt;div&gt;3. In the Web Sites Properties dialog box, click the Service tab.&lt;/div&gt;&lt;div&gt;4. In the Isolation mode section, clear the Run WWW service in IIS 5.0 isolation mode check box, and then click OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;IF IIS 7.0, This is to be as CLASSIC MODE (There is no Isolation mode in IIS 7, Instead it is Pipeline Mode)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;1. Select Application Pools in IIS Manager in the left pane in IIS 7.0, In the middle pane, MODE will be displayed as INTEGRATED/CLASSIC. ASP.Net should be in CLASSIC Mode and Default Application Pool on INTEGRATED MODE&lt;/div&gt;&lt;div&gt;Enable ASP.NET 2.0 in IIS 6.0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You must enable ASP.NET 2.0 on all Office SharePoint Server 2007 servers.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Enable ASP.NET 2.0&lt;/b&gt;&lt;/div&gt;&lt;div&gt;1. Click Start, point to All Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. In the IIS Manager tree, click the plus sign (+) next to the server name, and then click the Web Service Extensions folder.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. In the details pane, click ASP.NET v2.0.50727, and then click Allow.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Enabling ASP.Net 2.0 is not required for IIS 7.0 I Guess. By default it does this configuration during installation.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Login as MOSSADMIN&lt;/b&gt; User in the WFE server and click on the MOSS Setup exe file. This is the account will be used to Run MOSS and Run SharePoint Technologies Configuration Wizard. Service Account (MOSSUSER) will be given only when SharePoint Technologies Configuration Wizard asks for creating Sharepoint_config database.&lt;/div&gt;&lt;div&gt;Set up will ask for running the Sharepoint Technologies Configuration Wizard once the installation of Sharepoint is over. Provide the database server name and Service account credentials (MOSSUSER) here, Configuration Wizard creates the connection to the database server and create Configuration database (Sharepoint_Config) and other Configuration DBs like SSP, Search etc.&lt;/div&gt;&lt;div&gt;This process takes some time to complete the configuration.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The SharePoint Central Administration Web page opens.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Don’t refer this linked article for installing in a Web Farm, because this is specifically instructed for an installation where WFE and DB Server on the same machine. Follow it if you are setting up both WFE and DB on a single server. It is a good written document.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Preparing Web Front End &amp;amp; Application servers.&lt;/div&gt;&lt;div&gt;DB Server Preperation&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Do an IIS Reset and browse Central Administration(CA).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Notes&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If you are prompted for your user name and password, you might need to add the SharePoint Central Administration site to the list of trusted sites and configure user authentication settings in Internet Explorer. Instructions for configuring these settings are provided in the next set of steps. If you see a proxy server error message, you might need to configure your proxy server settings so that local addresses bypass the proxy server. Instructions for configuring this setting are provided later in this section.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Add the SharePoint Central Administration site to the list of trusted sites&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. In Internet Explorer, on the Tools menu, click Internet Options.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. On the Security tab, in the Select a Web content zone to specify its security settings box, click Trusted Sites, and then click Sites.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. Clear the Require server verification (https:) for all sites in this zone check box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. In the Add this Web site to the zone box, type the URL for the SharePoint Central Administration site, and then click Add.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. Select the Require server verification (https:) for all sites in this zone check box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. Click Close to close the Trusted Sites dialog box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. Click OK to close the Internet Options dialog box.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;:) CA Loaded !&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There would be some message in CA saying configuration is not complete.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Configure and run the Services in the server one by one as follows.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Configure 2007 Office SharePoint Server services After you have installed and configured Office SharePoint Server 2007 on all of your front-end servers, you must configure Office SharePoint Server 2007 services. The services you need to configure depends on your server topology and the server roles you deploy. Use the following guidelines to determine which services you need to configure in your server farm. Search and indexing servers You must start and configure the Office SharePoint Server Search service on at least one of your front-end servers. This service provides search and indexing services.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can start and configure this service on any type of server, including a server that is acting as an application server and provides only Office SharePoint Server 2007 services, a server that is acting as both an application server and a Web server and provides both Office SharePoint Server 2007 services and Web services, or a server that is acting as a Web server and provides only Web services. Web servers The Web server role is implemented by IIS and the Windows SharePoint Services Web Application service.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Windows SharePoint Services Web Application service must be running on any server that acts as a Web server and renders Web content. This service is started by default on servers that you set up using the Web Front End option during Setup. Hope this is started by default in the farm.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In addition to configuring services on your front-end servers, you must create the Shared Services Provider (SSP). The SSP makes it possible to share the Office SharePoint Server 2007 services across your server farm. You must create the SSP before you can use it in a farm environment; Office SharePoint Server 2007 does not create the SSP by default in a farm environment.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The following procedures step you through the process of configuring Office SharePoint Server 2007 services, creating a Web application for the SSP, creating the SSP, and configuring indexing settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Start and configure the Search service&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. On the SharePoint Central Administration home page, click the Operations tab on the top navigation bar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. On the Operations page, in Topology and Services, click Servers in farm.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. On the Servers in Farm page, click the server on which you want to configure the search service.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. Click Start next to Office SharePoint Server Search.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. On the Office SharePoint Server Search Settings page, in the Query and Indexing section, make sure that the Use this server for indexing content and Use this server for serving search queries check boxes are selected.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. In the Default Catalog Location section, type a path to a physical folder to store the index files, or use the default location that is specified.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. In the Contact E-Mail Address section, specify a valid e-mail address.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. In the Service Account section, click Configurable, and in User name and Password, type theSERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. In the Web Front End And Crawling section, do one of the following: If you are configuring the search service on a server that provides Web services and renders Web content, click No dedicated Web front-end computer for crawling If you are configuring the search service on a server that is a standalone search server that does not provide Web services and render Web content, click Use a dedicated web front end computer for crawling, and then, in Select a web front end computer, click the computer you want to use for crawling.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;10. Click Start.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Create the Shared Services Provider SSP&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. On the SharePoint Central Administration home page, click the Application Management tab on the top navigation bar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. On the Application Management page, in the Office SharePoint Server Shared Services section, click Create or configure this farm's shared services.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. On the Manage this Farm's Shared Services page, click New SSP. Note: We have to have an independent Web Application for SSP. If you have not created a Web application for the SSP administration site, you need to create one before you create the SSP. If you have already created a Web application for the SSP administration site, skip to step 14.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. On the New Shared Services Provider page, click Create a new Web application.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. On the Create New Web Application page, in the IIS Web Site section, click Create a new IIS web site, and do not modify the default settings in this section.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. In the Security Configuration section, under Authentication provider, select the appropriate option for your environment, and do not modify the default settings in the remainder of this section.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. In the Load Balanced URL section, do not modify the default settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. In the Application Pool section, click Create new application pool.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. In Application pool name, enter the name of your application pool or use the default name.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;10. Click Configurable, and in User name and Password, type the SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;11. In the Database Name and Authentication section, verify the database information and make sure that Windows Authentication (recommended)is selected.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;12. In the Search Server section, do not modify the default settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;13. Click OK. Upon successful creation of the Web application, the New Shared Services Provider page appears.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;14. In the SSP Name section, in Web Application, select the Web application that you created for the SSP, and do not modify any of the default settings in this section.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;15. In the My Site Location section, do not modify any of the default settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;16. In the SSP Service Credentials section, in User name and Password, type the &lt;b&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;17. In the SSP Database section, you can either accept the default settings (recommended), or specify your own settings for the database server, the database name, or the SQL authentication credentials.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;18. In the Search Database section, you can either accept the default settings (recommended), or specify your own settings for the search database server, the database name, or the SQL Server authentication credentials.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;19. In the Index Server section, in Index Server, click the server on which you configured the Search service. Note: If there is no index server listed in the Index Server section, then no server in your farm has been assigned the index server role. To assign the index server role to a server in your farm, follow the instructions in the "Configure the Search service" section earlier in this topic.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;20. In the SSL for Web Services section, click No.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;21. Click OK. Upon successful creation of the SSP, the Success page appears.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;22. On the Success page, click OK to return to the Manage this Farm's Core Services page.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Configure indexing settings&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. On the SharePoint Central Administration home page, click the Application Management tab on the navigation bar.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. On the Application Management page, in the Office SharePoint Server Shared Services section, click Create or configure this farm's shared services.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. On the Manage this Farm's Shared Services page, click SharedServices1.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. On the Shared Services Administration page, in Search, click Search Settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;5. On the Configure Search Settings page, in the Crawl Settings section, click Default content access account.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. In the Default content access account section, in Account, Password, and Confirm Password, type the &lt;b&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. Click OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. In the Crawl Settings section, click Content sources.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. On the Manage Content Sources page, click Local Office SharePoint Server sites.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;10. On the Edit Content Source page, in the Crawl Schedules section, under Full Crawl, click Create schedule.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;11. In the Manage Schedules dialog box, configure schedule settings for full crawls of your content, and then click OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;12. In the Crawl Schedules section, under Incremental Crawl, click Create schedule.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;13. In the Manage Schedules dialog box, configure schedule settings for incremental crawls of your content, and then click OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;14. In the Start Full Crawl section, select the Start full crawl of this content source check box, and then click OK. Create and configure a site After you configure services in your server farm, you can create a Web application and a site collection. You should create the Web application on the first server on which you installed Office SharePoint Server 2007 (in other words, the same server that is running the SharePoint Central Administration service).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Create a Web application for your SharePoint site On the SharePoint Central Administration home page, click the Application Management tab on the top navigation bar.&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;1. In the SharePoint Web Application Management section, click Create or extend Web application.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2. On the Create or Extend Web Application page, click Create a new Web Application.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3. On the Create New Web Application page, in the IIS Web Site section, click Create a new IIS web site, and change the port setting to port 80. This will allow you to access your site by typinghttp://ServerName. If you use a nonstandard port number you will have to include the port number in the URL to access your site (for example, http://ServerName:port).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;4. In the Security Configuration section, under Authentication provider, select the appropriate option for your environment, and do not modify any other settings in this section. Note: By default, the authentication provider is set to NTLM.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;6. In the Load Balanced URL section, do not modify the default settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;7. In the Application Pool section, select Create new application pool, and use the default settings for the application pool name.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;8. Click Configurable, and in User name and Password, type the SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;9. In the Database Name and Authentication section, verify the database information and ensure Windows Authentication (recommended)is selected.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;10. In the Search Server section, do not modify the default settings.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;11. Click OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;12. On the Application Created page, which appears after successful creation of the Web application, click Create a new Windows SharePoint Services site collection.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;Create the site collection for your Web application&lt;/b&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3328664428971816992?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3328664428971816992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3328664428971816992' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3328664428971816992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3328664428971816992'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/03/setting-up-moss-2007-in-server-farm.html' title='Setting up MOSS 2007 in a server farm environment'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4613501225495528334</id><published>2010-03-23T05:24:00.000-07:00</published><updated>2010-03-25T05:13:21.891-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Backup &amp; Restore MOSS SQL Server Method</title><content type='html'>&lt;div&gt;Procedure to move a site from One FARM set up to a different FARM of SAME Configuration (Sharepoint Version)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;1) I did a sitelock for the site you are going to back up.  &lt;div&gt;This will ensure that content databases wont be updated as there is no option for users to add/edit the site. &lt;/div&gt;&lt;div&gt;&lt;b&gt;stsadm –o setsitelock -lock readonly -url "http://corp-intranet:1200"&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt; Gone to Central Administration and select the Application Management/Content databases&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Selected the Application which has to be backed up.  Clicked on the Content Database and Made the status as &lt;b&gt;Offline &lt;/b&gt;(Ready/Offline). Clicked OK.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Gone to SQL Server Management Studio (Database Server) and took the back up as "Filename.bak"&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Changed the Content Database Status to &lt;/span&gt;Ready &lt;span class="Apple-style-span" style="font-weight: normal;"&gt;once the back up is completed. &lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal;"&gt;Set the site lock status to &lt;/span&gt;none &lt;span class="Apple-style-span" style="font-weight: normal;"&gt;after above steps are done.&lt;br /&gt;&lt;b&gt;stsadm –o setsitelock -lock none -url "http://corp-intranet:1200"&lt;/b&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;3)  I restored the database back up &lt;b&gt;"Filename.bak"&lt;/b&gt; database to the SQL instance for the new farm. (New database Server)&lt;br /&gt;&lt;br /&gt;4)  On the new farm, I opened SharePoint Central Administration.&lt;br /&gt;&lt;br /&gt;5)  On the Application Management tab, I created a new SharePoint Application.  In doing so, I created a new web site that &lt;b&gt;used the same port&lt;/b&gt; and host header the site on the original farm used.&lt;br /&gt;&lt;br /&gt;6)  When the application creation process completed,&lt;b&gt; I did not&lt;/b&gt; run the Site Collection Creation Wizard.&lt;br /&gt;&lt;br /&gt;7)  Within SharePoint Central Administration &lt;b&gt;Application Management&lt;/b&gt; tab, I clicked on Content Databases.&lt;br /&gt;&lt;br /&gt;8)  I verified the Web Application, then clicked on the content database (which is &lt;b&gt;an empty content database&lt;/b&gt; created during the Web Application creation process)&lt;br /&gt;&lt;br /&gt;9)  On the Content Database Settings page, I changed the database status from &lt;b&gt;Ready to Offline&lt;/b&gt;, clicked to select the option to &lt;b&gt;Remove Content Database&lt;/b&gt; and clicked OK.&lt;br /&gt;&lt;br /&gt;10) Back on the Manage Content Databases page, I verified the web application then clicked &lt;b&gt;Add a content database&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;11) On the Add Content Database page, I entered the name of my SQL server where I attached my restored database, as well as the database name.  I verified Windows Authentication was selected, selected the appropriate Search Server, and clicked OK.&lt;br /&gt;&lt;br /&gt;12)  Once that process finished, I was returned to the Manage Content Databases tab and could see that the restored content database was now associated with the web application I had created minutes earlier.&lt;br /&gt;&lt;br /&gt;13)  I edited my local hosts file so the URL of my site would resolve to the local server&lt;br /&gt;&lt;br /&gt;14)  I opened a command prompt and ran an &lt;b&gt;iisreset&lt;/b&gt;, then ran an  &lt;b&gt;ipconfig /flushdns&lt;/b&gt;, then pinged my site URL to verify it resolved to the local server.&lt;br /&gt;&lt;br /&gt;15)  I opened Internet Explorer and browsed to my site and voila! there it was!!&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4613501225495528334?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4613501225495528334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4613501225495528334' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4613501225495528334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4613501225495528334'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/03/backup-moss-sql-server-method.html' title='Backup &amp; Restore MOSS SQL Server Method'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7487233429072413336</id><published>2010-03-22T11:52:00.000-07:00</published><updated>2010-03-25T05:23:18.125-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Installing and Configuring MOSS for Server Farm</title><content type='html'>&lt;span class="Apple-style-span"   style="font-family:'Times New Roman';font-size:medium;"&gt;&lt;div   style="padding-right: 0px; padding-left: 0px; min-height: 1100px; padding-bottom: 0px; margin-top: 6px; margin-right: 6px; margin-bottom: 6px; margin-left: 6px; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); counter-reset: __goog_page__ 0; font-family:'Times New Roman';font-size:12pt;"&gt;&lt;div style="margin-top: 0px; margin-bottom: 0px; "&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana;"&gt;&lt;b&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Security account requirements&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;To install MOSS 2007 in a &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;server farm environment&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;, at-least 2 accounts are required.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;(Only one account required when WFE and Database are on a Single computer.)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;One as Domain User with Admin power in both the WFE and DB Server. This user should be manually added in to the SQL Server Users from the Management Studio. This should be able to login to SQL Server with Windows authentication should have DB Creator and Security Admin rights on SQL Server. This will be used for Installing MOSS and will be acted as SERVICE ACCOUNT for all the related services of MOSS.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Do not use the main domain\administrator account. This causes a problem if ever you wish to install Project Server 2007 on the same machine.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Account 1 (We call it as MOSSADMIN)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;A user account that you can use to install Office SharePoint Server 2007 and run the SharePoint Products and Technologies Configuration Wizard. This account must be:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;§ A domain user account.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;§ A member of the Administrators group on each of your front-end servers.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;§ A member of the SQL Server Logins, which grants login access to your SQL Server instance.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;§ A member of the SQL Server Database Creator server role, which grants permission to create and alter databases.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;§ A member of the SQL Server Security Administrators server role, which grants permission to manage server logins.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;Account 2 (We Call this as MOSSUSER)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;A unique domain user account that you can specify as the Office SharePoint Server 2007 service account. This user account is used to access your SharePoint configuration database. It also acts as the application pool identity for the SharePoint Central Administration application pool and it is the account under which the Windows SharePoint Services Timer service runs. The SharePoint Products and Technologies Configuration Wizard adds this account to the SQL Server Logins (We don’t need to manually add this in to SQL Server, Just provide when MOSS Technologies Configuration wizard asks), the SQL Server Database Creator server role, and the SQL Server Security Administrators server role. It is recommended that you follow the principle of least privilege and do not make this user account a member of any particular security group on your front-end servers or your back-end servers.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;SQL Server Installation.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;This has to be a different server.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;(Preferably, SQL Server 2005 should be installed with Local System account (Local Administrator of that machine). If you install it with Domain Admin User, SQL Server uses Kerberos Security. I don’t prefer this as MOSS Configuration Wizard’s default installation would be on NTLM, not Kerberos. So, I just login as Local System Admin for installation rather than going with domain Admin.)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Select Database Engine and Analysis Services in the Wizard, No need of selecting the other features like integration Services. Click Advanced, Select Client Component Tools (This is for getting the Management Studio). Service pack 3 is a must for SQL Server for MOSS. Open up Management Studio and add the Service account in to the Users, assign permissions as DB Creator and Security Admin rights on SQL Server.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Log off from DB Server if you are logged in as LOCAL ADMIN and Login as MOSSADMIN and Connect to Database Engine through SQL Server Management Studio with Windows Authentication. Give DB Creator and Security Admin roles to this user .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Make sure that Collation settings is of Latin1_General_CI_AS_KS_WS&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Enable the remote connection to the SQL Server through Serface Area Configuration wizard. Click Surface Area Configuration for Services and Connections. Select Remote Connections&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Read out these carefully to prepare a new DB Server for MOSS&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc263187.aspx"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;http://technet.microsoft.com/en-us/library/cc263187.aspx&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Configure surface area settings in SQL Server 2005&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;1. Click Start, point to All Programs, point to Microsoft SQL Server 2005, point to Configuration Tools, and then click SQL Server Surface Area Configuration.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;2. In the SQL Server Surface Area Configuration dialog box, click Surface Area Configuration for Services and Connections.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;3. In the tree, open your instance of SQL Server, open Database Engine, and then click Remote Connections.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;4. Click Local and Remote Connections, click Using both TCP/IP and named pipes, and then click OK&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;How do i know the Version of SharePoint&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; installed on my server?&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;To check this on a moss installed server, go to Central Administration(CA) &gt; Operations &gt; Servers in the farm. You can see the version of the MOSS there.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Also, To know the Edition of MOSS(Standard/Enterprise) you installed&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Go to the Central administration -&gt; Operations-&gt; Enable Enterprise features. This will show you whether it is standard or enterprise. If it is enterprise edition, Button would be disabled.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Name&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Version&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;MOSS 2007/WSS 3.0 Service Pack 1 (Contains the below)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;12.0.0.6219&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;MOSS 2007/WSS 3.0 October 2007 Public Update&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;12.0.0.6039&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;MOSS 2007/WSS 3.0 August 2007 Hotfix&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;12.0.0.6036&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;MOSS 2007/WSS 3.0 RTM&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;12.0.0.4518&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Framework 2.0 and 3.0 on the front end server (Where MOSS is going to be installed)&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;IIS on the Front end server with the rights&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;As the front end server runs with Windows Server 2008 Operating system(OS), Installing and configuring will not be as easy as on a 2003 OS.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;For installing IIS refer http://learn.iis.net/page.aspx/29/install-iis-7-on-windows-server-2008-or-windows-server-2008-r2/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;IIS 7 will get installed with .Net Framework 2.0. We need Framework 3.0 also to be installed on Moss WFE. Go to IIS Manager, Application Pools and see the version of Framework version in the right pane.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;IIS Isolation mode settings (IF IIS 6.0)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;1. Click Start, point to All Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;2. In the IIS Manager tree, click the plus sign ( ) next to the server name, and then right-click the Web Sites folder and select Properties.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;3. In the Web Sites Properties dialog box, click the Service tab.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;4. In the Isolation mode section, clear the Run WWW service in IIS 5.0 isolation mode check box, and then click OK.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;IF IIS 7.0, This is to be as CLASSIC MODE (There is no Isolation mode in IIS 7, Instead it is Pipeline Mode)&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;1. Select Application Pools in IIS Manager in the left pane in IIS 7.0, In the middle pane, MODE will be displayed as INTEGRATED/CLASSIC. ASP.Net should be in CLASSIC Mode and Default Application Pool on INTEGRATED MODE&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Enable ASP.NET 2.0 in IIS 6.0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;You must enable ASP.NET 2.0 on all Office SharePoint Server 2007 servers.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Enable ASP.NET 2.0&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;1. Click Start, point to All Programs, point to Administrative Tools, and then click Internet Information Services (IIS) Manager.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;2. In the IIS Manager tree, click the plus sign (+) next to the server name, and then click the Web Service Extensions folder.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;3. In the details pane, click ASP.NET v2.0.50727, and then click Allow.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Enabling ASP.Net 2.0 is not required for IIS 7.0 I Guess. By default it does this configuration during installation.&lt;/span&gt;&lt;/span&gt;&lt;/i&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Login as MOSSADMIN&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; User in the WFE server and click on the MOSS Setup exe file. This is the account will be used to Run MOSS and Run SharePoint Technologies Configuration Wizard. &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Service Account (MOSSUSER)&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; will be given only when SharePoint Technologies Configuration Wizard asks for creating Sharepoint_config database.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; "&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Set up will ask for running the Sharepoint Technologies Configuration Wizard once the installation of Sharepoint is over. &lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Provide the database server name and Service account credentials (MOSSUSER)&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; here, Configuration Wizard creates the connection to the database server and create Configuration database (Sharepoint_Config) and other Configuration DBs like SSP, Search etc.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/div&gt;&lt;div   style="padding-right: 0px; padding-left: 0px; min-height: 1100px; padding-bottom: 0px; margin-top: 6px; margin-right: 6px; margin-bottom: 6px; margin-left: 6px; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); counter-reset: __goog_page__ 0; font-family:'Times New Roman';font-size:12pt;"&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;This process takes some time to complete the configuration.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:Verdana;"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;The SharePoint Central Administration Web page opens.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;Don’t refer &lt;/span&gt;&lt;/span&gt;&lt;a href="http://blogs.msdn.com/martinkearn/archive/2007/03/28/how-to-install-sharepoint-server-2007-on-a-single-machine.aspx"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;this linked article&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; for installing in a Web Farm, because this is &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;specifically instructed&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; for an installation where WFE and DB Server &lt;/span&gt;&lt;/span&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;on the same machine&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;. Follow it if you are setting up both WFE and DB on a single server. It is a good written document.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://technet.microsoft.com/en-us/library/cc263075.aspx"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Preparing&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;Web Front End &amp;amp; Application servers.&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;&lt;a href="http://www.sharepointgroups.org/rsug/blog/Lists/Posts/Post.aspx?ID=2"&gt;&lt;b&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt;DB Server&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/a&gt;&lt;span class="Apple-style-span"  style="font-size:small;"&gt;&lt;span class="Apple-style-span"  style="font-family:verdana;"&gt;&lt;span class="Apple-style-span" style="font-size: medium; "&gt;&lt;span class="Apple-style-span"  style="font-family:'trebuchet ms';"&gt; Preperation&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;D&lt;span class="Apple-style-span"  style="font-family:Georgia, serif;"&gt;o an IIS Reset and browse Central Administration(CA).&lt;br /&gt;&lt;br /&gt;Notes&lt;br /&gt;&lt;br /&gt;If you are prompted for your user name and password, you might need to add the SharePoint Central Administration site to the list of trusted sites and configure user authentication settings in Internet Explorer. Instructions for configuring these settings are provided in the next set of steps. If you see a proxy server error message, you might need to configure your proxy server settings so that local addresses bypass the proxy server. Instructions for configuring this setting are provided later in this section.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Add the SharePoint Central Administration site to the list of trusted sites&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;1. In Internet Explorer, on the Tools menu, click Internet Options.&lt;br /&gt;&lt;br /&gt;2. On the Security tab, in the Select a Web content zone to specify its security settings box, click Trusted Sites, and then click Sites.&lt;br /&gt;&lt;br /&gt;3. Clear the Require server verification (https:) for all sites in this zone check box.&lt;br /&gt;&lt;br /&gt;4. In the Add this Web site to the zone box, type the URL for the SharePoint Central Administration site, and then click Add.&lt;br /&gt;&lt;br /&gt;5. Select the Require server verification (https:) for all sites in this zone check box.&lt;br /&gt;&lt;br /&gt;6. Click Close to close the Trusted Sites dialog box.&lt;br /&gt;&lt;br /&gt;7. Click OK to close the Internet Options dialog box.&lt;br /&gt;&lt;br /&gt;:) CA Loaded !&lt;br /&gt;&lt;br /&gt;There would be some message in CA saying configuration is not complete.&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;br /&gt;&lt;/span&gt;Configure and run the Services in the server one by one as follows.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;Configure 2007 Office SharePoint Server services After you have installed and configured Office SharePoint Server 2007 on all of your front-end servers, you must configure Office SharePoint Server 2007 services. The services you need to configure depends on your server topology and the server roles you deploy. Use the following guidelines to determine which services you need to configure in your server farm. Search and indexing servers You must start and configure the Office SharePoint Server Search service on at least one of your front-end servers. This service provides search and indexing services.&lt;br /&gt;&lt;br /&gt;You can start and configure this service on any type of server, including a server that is acting as an application server and provides only Office SharePoint Server 2007 services, a server that is acting as both an application server and a Web server and provides both Office SharePoint Server 2007 services and Web services, or a server that is acting as a Web server and provides only Web services. Web servers The Web server role is implemented by IIS and the Windows SharePoint Services Web Application service.&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;p   style="padding-right: 0px; padding-left: 0px; min-height: 1100px; padding-bottom: 0px; margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); counter-reset: __goog_page__ 0; font-family:'Times New Roman';font-size:12pt;"&gt;&lt;br /&gt;The Windows SharePoint Services Web Application service must be running on any server that acts as a Web server and renders Web content. This service is started by default on servers that you set up using the Web Front End option during Setup. Hope this is started by default in the farm.&lt;br /&gt;&lt;br /&gt;In addition to configuring services on your front-end servers, you must create the Shared Services Provider (SSP). The SSP makes it possible to share the Office SharePoint Server 2007 services across your server farm. You must create the SSP before you can use it in a farm environment; Office SharePoint Server 2007 does not create the SSP by default in a farm environment.&lt;br /&gt;&lt;br /&gt;The following procedures step you through the process of configuring Office SharePoint Server 2007 services, creating a Web application for the SSP, creating the SSP, and configuring indexing settings.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Start and configure the Search service&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;1. On the SharePoint Central Administration home page, click the Operations tab on the top navigation bar.&lt;br /&gt;&lt;br /&gt;2. On the Operations page, in Topology and Services, click Servers in farm.&lt;br /&gt;&lt;br /&gt;3. On the Servers in Farm page, click the server on which you want to configure the search service.&lt;br /&gt;&lt;br /&gt;4. Click Start next to Office SharePoint Server Search.&lt;br /&gt;&lt;br /&gt;5. On the Office SharePoint Server Search Settings page, in the Query and Indexing section, make sure that the Use this server for indexing content and Use this server for serving search queries check boxes are selected.&lt;br /&gt;&lt;br /&gt;6. In the Default Catalog Location section, type a path to a physical folder to store the index files, or use the default location that is specified.&lt;br /&gt;&lt;br /&gt;7. In the Contact E-Mail Address section, specify a valid e-mail address.&lt;br /&gt;&lt;br /&gt;8. In the Service Account section, click Configurable, and in User name and Password, type the&lt;strong&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;9. In the Web Front End And Crawling section, do one of the following: If you are configuring the search service on a server that provides Web services and renders Web content, click No dedicated Web front-end computer for crawling If you are configuring the search service on a server that is a standalone search server that does not provide Web services and render Web content, click Use a dedicated web front end computer for crawling, and then, in Select a web front end computer, click the computer you want to use for crawling.&lt;br /&gt;&lt;br /&gt;10. Click Start.&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;br /&gt;&lt;/span&gt;Create the Shared Services Provider SSP&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;1. On the SharePoint Central Administration home page, click the Application Management tab on the top navigation bar.&lt;br /&gt;&lt;br /&gt;2. On the Application Management page, in the Office SharePoint Server Shared Services section, click Create or configure this farm's shared services.&lt;br /&gt;&lt;br /&gt;3. On the Manage this Farm's Shared Services page, click New SSP. Note: We have to have an independent Web Application for SSP. If you have not created a Web application for the SSP administration site, you need to create one before you create the SSP. If you have already created a Web application for the SSP administration site, skip to step 14.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p   style="padding-right: 0px; padding-left: 0px; min-height: 1100px; padding-bottom: 0px; margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); counter-reset: __goog_page__ 0; font-family:'Times New Roman';font-size:12pt;"&gt;4. On the New Shared Services Provider page, click Create a new Web application.&lt;br /&gt;&lt;br /&gt;5. On the Create New Web Application page, in the IIS Web Site section, click Create a new IIS web site, and do not modify the default settings in this section.&lt;br /&gt;&lt;br /&gt;6. In the Security Configuration section, under Authentication provider, select the appropriate option for your environment, and do not modify the default settings in the remainder of this section.&lt;br /&gt;&lt;br /&gt;7. In the Load Balanced URL section, do not modify the default settings.&lt;br /&gt;&lt;br /&gt;8. In the Application Pool section, click Create new application pool.&lt;br /&gt;&lt;br /&gt;9. In Application pool name, enter the name of your application pool or use the default name.&lt;br /&gt;&lt;br /&gt;10. Click Configurable, and in User name and Password, type the &lt;strong&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;11. In the Database Name and Authentication section, verify the database information and make sure that Windows Authentication (recommended)is selected.&lt;br /&gt;&lt;br /&gt;12. In the Search Server section, do not modify the default settings.&lt;br /&gt;&lt;br /&gt;13. Click OK. Upon successful creation of the Web application, the New Shared Services Provider page appears.&lt;br /&gt;&lt;br /&gt;14. In the SSP Name section, in Web Application, select the Web application that you created for the SSP, and do not modify any of the default settings in this section.&lt;br /&gt;&lt;br /&gt;15. In the My Site Location section, do not modify any of the default settings.&lt;br /&gt;&lt;br /&gt;16. In the SSP Service Credentials section, in User name and Password, type the &lt;strong&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;17. In the SSP Database section, you can either accept the default settings (recommended), or specify your own settings for the database server, the database name, or the SQL authentication credentials.&lt;br /&gt;&lt;br /&gt;18. In the Search Database section, you can either accept the default settings (recommended), or specify your own settings for the search database server, the database name, or the SQL Server authentication credentials.&lt;br /&gt;&lt;br /&gt;19. In the Index Server section, in Index Server, click the server on which you configured the Search service. Note: If there is no index server listed in the Index Server section, then no server in your farm has been assigned the index server role. To assign the index server role to a server in your farm, follow the instructions in the "Configure the Search service" section earlier in this topic.&lt;br /&gt;&lt;br /&gt;20. In the SSL for Web Services section, click No.&lt;br /&gt;&lt;br /&gt;21. Click OK. Upon successful creation of the SSP, the Success page appears.&lt;br /&gt;&lt;br /&gt;22. On the Success page, click OK to return to the Manage this Farm's Core Services page. Configure indexing settings&lt;br /&gt;&lt;br /&gt;1. On the SharePoint Central Administration home page, click the Application Management tab on the navigation bar.&lt;br /&gt;&lt;br /&gt;2. On the Application Management page, in the Office SharePoint Server Shared Services section, click Create or configure this farm's shared services.&lt;br /&gt;&lt;br /&gt;3. On the Manage this Farm's Shared Services page, click SharedServices1.&lt;br /&gt;&lt;br /&gt;4. On the Shared Services Administration page, in Search, click Search Settings.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p   style="padding-right: 0px; padding-left: 0px; min-height: 1100px; padding-bottom: 0px; margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); counter-reset: __goog_page__ 0; font-family:'Times New Roman';font-size:12pt;"&gt;5. On the Configure Search Settings page, in the Crawl Settings section, click Default content access account.&lt;br /&gt;&lt;br /&gt;6. In the Default content access account section, in Account, Password, and Confirm Password, type the &lt;strong&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;7. Click OK.&lt;br /&gt;&lt;br /&gt;8. In the Crawl Settings section, click Content sources.&lt;br /&gt;&lt;br /&gt;9. On the Manage Content Sources page, click Local Office SharePoint Server sites.&lt;br /&gt;&lt;br /&gt;10. On the Edit Content Source page, in the Crawl Schedules section, under Full Crawl, click Create schedule.&lt;br /&gt;&lt;br /&gt;11. In the Manage Schedules dialog box, configure schedule settings for full crawls of your content, and then click OK.&lt;br /&gt;&lt;br /&gt;12. In the Crawl Schedules section, under Incremental Crawl, click Create schedule.&lt;br /&gt;&lt;br /&gt;13. In the Manage Schedules dialog box, configure schedule settings for incremental crawls of your content, and then click OK.&lt;br /&gt;&lt;br /&gt;14. In the Start Full Crawl section, select the Start full crawl of this content source check box, and then click OK. Create and configure a site After you configure services in your server farm, you can create a Web application and a site collection. You should create the Web application on the first server on which you installed Office SharePoint Server 2007 (in other words, the same server that is running the SharePoint Central Administration service).&lt;br /&gt;&lt;strong&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;br /&gt;&lt;/span&gt;Create a Web application for your SharePoint site On the SharePoint Central Administration home page, click the Application Management tab on the top navigation bar.&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;1. In the SharePoint Web Application Management section, click Create or extend Web application.&lt;br /&gt;&lt;br /&gt;2. On the Create or Extend Web Application page, click Create a new Web Application.&lt;br /&gt;&lt;br /&gt;3. On the Create New Web Application page, in the IIS Web Site section, click Create a new IIS web site, and change the port setting to port 80. This will allow you to access your site by typing&lt;a href="http://servername/"&gt;http://ServerName&lt;/a&gt;. If you use a nonstandard port number you will have to include the port number in the URL to access your site (for example, &lt;a href="http://servername:port/"&gt;http://ServerName:port&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;4. In the Security Configuration section, under Authentication provider, select the appropriate option for your environment, and do not modify any other settings in this section. Note: By default, the authentication provider is set to NTLM.&lt;br /&gt;&lt;br /&gt;6. In the Load Balanced URL section, do not modify the default settings.&lt;br /&gt;&lt;br /&gt;7. In the Application Pool section, select Create new application pool, and use the default settings for the application pool name.&lt;br /&gt;&lt;br /&gt;8. Click Configurable, and in User name and Password, type the &lt;strong&gt;SERVICE ACCOUNT(DOMAIN\MOSSUSER)&lt;br /&gt;&lt;span class="Apple-style-span" style="font-weight: normal; "&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;9. In the Database Name and Authentication section, verify the database information and ensure Windows Authentication (recommended)is selected.&lt;br /&gt;&lt;br /&gt;10. In the Search Server section, do not modify the default settings.&lt;br /&gt;&lt;br /&gt;11. Click OK.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p style="padding-right: 0px; padding-left: 0px; font-size: 12pt; min-height: 1100px; padding-bottom: 0px; margin-top: 0pt; margin-right: 0pt; margin-bottom: 0pt; margin-left: 0pt; color: rgb(0, 0, 0); line-height: normal; padding-top: 0px; background-color: rgb(255, 255, 255); "&gt;12. On the Application Created page, which appears after successful creation of the Web application, click Create a new Windows SharePoint Services site collection.&lt;br /&gt;&lt;br /&gt;Create the site collection for your Web application&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7487233429072413336?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7487233429072413336/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7487233429072413336' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7487233429072413336'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7487233429072413336'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/03/installing-and-configuring-moss-for.html' title='Installing and Configuring MOSS for Server Farm'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4794456223847196875</id><published>2010-02-13T01:04:00.000-08:00</published><updated>2010-02-13T01:20:55.139-08:00</updated><title type='text'>User Controls; the reusability!</title><content type='html'>You can call the same UserControls any number of times&lt;br /&gt;&lt;br /&gt;In the ASPX file, reference goes as..&lt;br /&gt;&lt;uc1:uclatestnews id="UCLatestNews1" runat="server"&gt;&lt;br /&gt;&lt;uc1:uclatestnews id="UCLatestNews2" runat="server"&gt;&lt;br /&gt;&lt;uc1:uclatestnews id="UCLatestNews3" runat="server"&gt;&lt;br /&gt;&lt;br /&gt;My User Control Code Behind does the job of fetching Latest News for Area.&lt;br /&gt;It accepts AreaId and NewsCount(Number of Records) as input.&lt;br /&gt;&lt;br /&gt;I am going to use this User Control to fetch Latest news for different areas.&lt;br /&gt;Say, I wanted to display Bangalore, Hyderabad, and Delhi News.&lt;br /&gt;&lt;br /&gt;Here All i need to do is to create a UserControl which accepts the paramenters AreaId and NewCount.&lt;br /&gt;&lt;br /&gt;I can drag and drop this user control in the page three times to display the news for three Areas.&lt;br /&gt;&lt;br /&gt;This is my UserControl CodeBehind file&lt;br /&gt;&lt;br /&gt;public partial class News_UCLatestNews : System.Web.UI.UserControl&lt;br /&gt;{&lt;br /&gt;  protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;  {&lt;br /&gt;      BindDataList();&lt;br /&gt;  }&lt;br /&gt;  private Int64 areaId;&lt;br /&gt;  public Int64 AreaId&lt;br /&gt;  {&lt;br /&gt;      get { return areaId; }&lt;br /&gt;      set { areaId= value; }&lt;br /&gt;  }&lt;br /&gt;  private Int64 newsCount;&lt;br /&gt;  public Int64 NewsCount&lt;br /&gt;  {&lt;br /&gt;      get { return newsCount; }&lt;br /&gt;      set { newsCount = value; }&lt;br /&gt;  }&lt;br /&gt;  private void BindDataList()&lt;br /&gt;  {&lt;br /&gt;      List&lt;newsentityshort&gt; oList = new List&lt;newsentityshort&gt;();&lt;br /&gt;      NewsEntityShort oEntity = new NewsEntityShort();&lt;br /&gt;      NewsLogic oLogic = new NewsLogic();&lt;br /&gt;&lt;br /&gt;      oEntity.NewsCount = NewsCount;&lt;br /&gt;      oEntity.ParkId = AreaId;&lt;br /&gt;    &lt;br /&gt;      oList = oLogic.GetNewsUpdatesForPark(oEntity);&lt;br /&gt;      DLLatestNews.DataSource = oList;&lt;br /&gt;      DLLatestNews.DataBind();&lt;br /&gt;    &lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;Note down, UserControl is not assigning values for AreaId and NewsCount. Instead, it declares these as PUBLIC propeties which can be added from any other page which make use of (consume) this User Control.&lt;br /&gt;&lt;br /&gt;The code behind file of the Home page, where this user control has been dragged and dropped THREE times, will assign the AreaId and NewsCount for each UserControl.&lt;br /&gt;&lt;br /&gt;The home page Code Behind will be as simple as this&lt;br /&gt;protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;  {&lt;br /&gt;      UCLatestNews1.NewsCount = 10;&lt;br /&gt;      UCLatestNews1.AreaId = 2;  // Bangalore&lt;br /&gt;&lt;br /&gt;      UCLatestNews2.NewsCount = 10;&lt;br /&gt;      UCLatestNews2.AreaId = 3;  // Hyderabad&lt;br /&gt;&lt;br /&gt;      UCLatestNews3.NewsCount = 5;&lt;br /&gt;      UCLatestNews3.AreaId = 4; // Delhi&lt;/newsentityshort&gt;&lt;/newsentityshort&gt;&lt;/uc1:uclatestnews&gt;&lt;/uc1:uclatestnews&gt;&lt;/uc1:uclatestnews&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4794456223847196875?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4794456223847196875/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4794456223847196875' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4794456223847196875'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4794456223847196875'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/02/user-controls-reusability.html' title='User Controls; the reusability!'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-885758025759924498</id><published>2010-02-10T20:50:00.000-08:00</published><updated>2010-02-10T20:54:48.941-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed due to the following error: 8007042d</title><content type='html'>Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed due to the following error: 8007042d&lt;br /&gt;&lt;br /&gt;This error is related to the SharePoint Search.&lt;br /&gt;&lt;br /&gt;Check Services running in the farm for the &lt;span style="font-weight:bold;"&gt;Office SharePoint Server Search&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Make sure that Office SharePoint Server Search, is started in the farm. If running, and still having error, check it in the &lt;span style="font-weight:bold;"&gt;services.msc&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Start the service. If its not starting, check the "log on" by right click and make sure the Log On password is correct. and start manually.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-885758025759924498?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/885758025759924498/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=885758025759924498' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/885758025759924498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/885758025759924498'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/02/retrieving-com-class-factory-for.html' title='Retrieving the COM class factory for component with CLSID {3D42CCB1-4665-4620-92A3-478F47389230} failed due to the following error: 8007042d'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7265048008125721456</id><published>2010-02-10T20:40:00.000-08:00</published><updated>2010-02-10T20:50:26.208-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Access to the site is locked. SharePoint</title><content type='html'>"Access to this Web site has been blocked.&lt;br /&gt;Please contact the administrator to resolve this problem."&lt;br /&gt;&lt;br /&gt;If this is the message you are getting while browsing your sharepoint site, &lt;br /&gt;&lt;br /&gt;Check the site status using the STSADM command&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;stsadm -o getsitelock -url http://server_name &lt;/span&gt;&lt;br /&gt; &lt;br /&gt;If it is locked, use the following command to unlock the site to start browsing.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;stsadm -o setsitelock -url http://server_name -lock noaccess &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Site starts working now.&lt;br /&gt;(Normally this feature is used during the site back up process. This make sure that no data is missed during the back up prosses by locking the access from the user.)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7265048008125721456?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7265048008125721456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7265048008125721456' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7265048008125721456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7265048008125721456'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/02/access-to-site-is-locked-sharepoint.html' title='Access to the site is locked. SharePoint'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-485515479706931960</id><published>2010-01-29T10:15:00.000-08:00</published><updated>2010-01-29T10:27:04.612-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>C#: Exporting the Table content of an HTML Page on Button Click to MS Excel.</title><content type='html'>Exporting the Table content of an HTML Page on Button Click to MS Excel.&lt;br /&gt;&lt;br /&gt; protected void Button1_Click(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        string fileName = "CompanyProfile.xls";&lt;br /&gt;   &lt;br /&gt;        HttpContext.Current.Response.Clear();&lt;br /&gt;        HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", fileName));&lt;br /&gt;        HttpContext.Current.Response.ContentType = "application/ms-excel";&lt;br /&gt;        StringWriter sw = new StringWriter();&lt;br /&gt;        HtmlTextWriter htw = new HtmlTextWriter(sw);&lt;br /&gt;  &lt;br /&gt;        HtmlForm oFrm = new HtmlForm();&lt;br /&gt;&lt;br /&gt;        tblExport.Parent.Controls.Add(oFrm);&lt;br /&gt;        oFrm.Attributes["runat"] = "server";&lt;br /&gt;        oFrm.Controls.Add(tblExport);&lt;br /&gt;        oFrm.RenderControl(htw);&lt;br /&gt;        Response.Write(sw.ToString());&lt;br /&gt;        Response.End();&lt;br /&gt;     &lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;Export a GridView Content to MS Excel : C# (Few more Find Controls to be added if the Gridview has some controls in it.)&lt;br /&gt;&lt;br /&gt;private void ExportGridView()&lt;br /&gt;&lt;br /&gt;    {&lt;br /&gt;        string attachment = "attachment; filename=SalesVsExpenses.xls";&lt;br /&gt;        Response.ClearContent();&lt;br /&gt;        Response.AddHeader("content-disposition", attachment);&lt;br /&gt;        Response.ContentType = "application/ms-excel";&lt;br /&gt;        StringWriter sw = new StringWriter();&lt;br /&gt;        HtmlTextWriter htw = new HtmlTextWriter(sw);&lt;br /&gt;        // Create a form to contain the grid&lt;br /&gt;        HtmlForm frm = new HtmlForm();&lt;br /&gt;        GrvMerged.Parent.Controls.Add(frm);&lt;br /&gt;        frm.Attributes["runat"] = "server";&lt;br /&gt;        frm.Controls.Add(GrvMerged);&lt;br /&gt;        frm.RenderControl(htw);&lt;br /&gt;        Response.Write(sw.ToString());&lt;br /&gt;        Response.End();&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;Method, if GridView has some controls in it.&lt;br /&gt;&lt;br /&gt;private static void PrepareControlForExport(Control control)&lt;br /&gt;    {&lt;br /&gt;        int i = 0;&lt;br /&gt;        while ((i &lt; control.Controls.Count))&lt;br /&gt;        {&lt;br /&gt;            Control current = control.Controls[i];&lt;br /&gt;            if ((current is LinkButton))&lt;br /&gt;            {&lt;br /&gt;                control.Controls.Remove(current);&lt;br /&gt;                control.Controls.AddAt(i, new LiteralControl(((LinkButton)current).Text));&lt;br /&gt;            }&lt;br /&gt;            else if ((current is ImageButton))&lt;br /&gt;            {&lt;br /&gt;                control.Controls.Remove(current);&lt;br /&gt;                control.Controls.AddAt(i, new LiteralControl(((ImageButton)current).AlternateText));&lt;br /&gt;            }&lt;br /&gt;            else if ((current is HyperLink))&lt;br /&gt;            {&lt;br /&gt;                control.Controls.Remove(current);&lt;br /&gt;                control.Controls.AddAt(i, new LiteralControl(((HyperLink)current).Text));&lt;br /&gt;            }&lt;br /&gt;            else if ((current is DropDownList))&lt;br /&gt;            {&lt;br /&gt;                control.Controls.Remove(current);&lt;br /&gt;                control.Controls.AddAt(i, new LiteralControl(((DropDownList)current).SelectedItem.Text));&lt;br /&gt;            }&lt;br /&gt;            else if ((current is CheckBox))&lt;br /&gt;            {&lt;br /&gt;                control.Controls.Remove(current);&lt;br /&gt;                control.Controls.AddAt(i, new LiteralControl(((CheckBox)current).Checked.ToString()));&lt;br /&gt;            }if (current.HasControls())&lt;br /&gt;            {PrepareControlForExport(current);}&lt;br /&gt;            i = (i + 1);&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/2400635795710127553-485515479706931960?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/485515479706931960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=485515479706931960' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/485515479706931960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/485515479706931960'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2010/01/c-exporting-table-content-of-html-page.html' title='C#: Exporting the Table content of an HTML Page on Button Click to MS Excel.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-803035639433298113</id><published>2009-12-06T10:56:00.001-08:00</published><updated>2009-12-06T10:58:30.619-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Validation Controls'/><category scheme='http://www.blogger.com/atom/ns#' term='Validation'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>ASP.Net Validation dos and don'ts</title><content type='html'>The many languages available for working with the .NET Framework make it easy to develop code that validates data entered by a user before sending it to a database table. In addition, ASP.NET provides numerous validation controls that make it easy to validate data entered via a Web Form.&lt;br /&gt;&lt;br /&gt;Though your .NET development toolbox is well-stocked, these tools are useless if you use them ineffectively. Be aware of what type of data checks you need to perform to ensure data integrity. The following list outlines how you should approach data validation:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Required:&lt;/span&gt; One of the most basic validation methods is defining certain fields as required, so that users must enter something in the field before they can save the data. Likewise, database tables may contain required columns—passing null data to these columns will raise an exception.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Data type:&lt;/span&gt; Another obvious way to validate user input is checking the data type against what is expected. For example, a date field should only accept legal dates (although there are numerous format options). Trying to pass an invalid date value to a database date column will trigger an exception.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Length:&lt;/span&gt; The length of a date entry field is one of the most common validation errors that I encounter. You must adhere to the size limit defined in the database or data store to ensure an exception isn't raised. This is easy in both ASP.NET Web and Windows Forms by using a field's MaxLength property or attribute. You should also validate the data length in the code since Web Forms may be bypassed by passing data to the server via HTTP Server variables.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Format:&lt;/span&gt; A field's type can determine its proper format. A good example is a date field that may use the xx/xx/xxxx format. Likewise, telephone number and salary fields utilize specific formats. You may create a custom field control, utilize JavaScript in ASP.NET, or apply formatting via code and the String.Format method or using regular expressions to apply necessary formatting to user data. This may be part of data validation, and the validation shouldn't accept improperly formatted data.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Range of values:&lt;/span&gt; Utilizing a range of values as a guide for data entry allows you to easily check if an entered value falls within it. This type of check may be used for entering salaries, zip codes, and so forth.&lt;br /&gt;Check against another field value: You may validate a field's value against another field on the form. The second field could be hidden or entered by the user. One common example is date entries where a user may enter start and end dates, and the end date should always be greater than or equal to the start date.&lt;br /&gt;Putting this list in action depends on the application type. We'll examine an example using the ASP.NET platform. The sample Web Form has four fields:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Username:&lt;/span&gt; Required text field limited to 50 characters. A RequiredFieldValidator control is used to ensure a value is entered.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Zip code:&lt;/span&gt; Text field accepting a five character zip code in the integer range of 00000 and 99999. It's not required, so validation is performed only if a value is entered. A RegularExpressionValidator control is used to ensure only five numeric digits are entered. A RangeValidator control verifies the value is in the legal range.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Start date:&lt;/span&gt; Text field accepting a date value. A RequiredFieldValidator control is used to make sure a value is entered. A CompareValidator control is used to ensure only a date type of date is entered, and another CompareValidator control is used to verify the start date is less than the end date.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;End date:&lt;/span&gt; Text field accepting a date value. A RequiredFieldValidator control is used to make sure a value is entered. A CompareValidator control is used to make sure a date is entered in the field, and another CompareValidator control verifies the end date is greater than the start date.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-803035639433298113?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/803035639433298113/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=803035639433298113' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/803035639433298113'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/803035639433298113'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/12/aspnet-validation-dos-and-donts.html' title='ASP.Net Validation dos and don&apos;ts'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-6885570337034093620</id><published>2009-11-30T03:15:00.000-08:00</published><updated>2010-06-02T12:10:27.605-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Service'/><category scheme='http://www.blogger.com/atom/ns#' term='Call .Net web service with Javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Calling an ASP.Net Web Service from Javascript</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style="color:#0000EE;"&gt;&lt;span class="Apple-style-span" style="text-decoration: underline;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;Page which calls the service has to have &lt;b&gt;Script Manager&lt;/b&gt; and the Script Manager has to mention the &lt;b&gt;ServiceReference &lt;/b&gt;attribute.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;asp:&lt;b&gt;ScriptManager&lt;/b&gt; runat="server" ID="ScrpMgr1"&gt;&lt;/div&gt;&lt;div&gt;&lt;services&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;&lt;asp:servicereference path="TempConversion.asmx"&gt;&lt;/div&gt;&lt;div&gt;&lt;/services&gt;&lt;/div&gt;&lt;div&gt;&lt;/asp:&lt;b&gt;ScriptManagers&lt;/b&gt;&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Also, the &lt;b&gt;Web.config&lt;/b&gt; file should have an extra entry for ScriptHandlerFactory.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;&lt;httphandlers&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;&lt;remove verb="*" path="*.asmx"&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;	&lt;/span&gt;&lt;add verb="*" path="*.asmx" validate="false" type=""&gt;System.Web.Script.Services.ScriptHandlerFactory&lt;/b&gt;" /&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;/httphandlers&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;b&gt;&lt;br /&gt;&lt;/b&gt;&lt;/div&gt;&lt;div&gt;Below is my JavaScript method which calls the WebService. This has got a SuccessCallBack method to which the Service returns the result set. &lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;var DivIDAct;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;function&lt;/span&gt; &lt;b&gt;MyWebServiceCallForActuals&lt;/b&gt;(ActualsDivId, BudgetYear, BudgetVersion, SalesDivision, row, Display) &lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;       expandcollapse(ActualsDivId, row, 2);&lt;/div&gt;&lt;div&gt;       BrandSerivces.GetBrandsForActuals(BudgetYear, BudgetVersion, SalesDivision, '', SuccessCallBackActuals);&lt;/div&gt;&lt;div&gt;       ActualsDivId = 'Division' + ActualsDivId;&lt;/div&gt;&lt;div&gt;       var ActualsDivObj = document.getElementById(ActualsDivId);&lt;/div&gt;&lt;div&gt;      DivIDAct = ActualsDivObj;&lt;/div&gt;&lt;div&gt; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;function&lt;/span&gt; &lt;b&gt;SuccessCallBackActuals&lt;/b&gt;(result) &lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;            DivIDAct.&lt;span class="Apple-style-span"  style="color:#990000;"&gt;innerHTML &lt;/span&gt;= result;&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is just to show an Expand Collapse button on click of each row item. A new row item would be displayed under the clicked row, which will show the details of the current row. The Javascript ExpandCollapse method takes care about swaping the Expand(Plus Image) and Collapse(Minus image) images. I am not going to explain much about this as this is self explanatory, just walk through the code.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;function&lt;/span&gt; &lt;b&gt;expandcollapse&lt;/b&gt;(obj, row, ch) {&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;            var div;&lt;/div&gt;&lt;div&gt;            var img;&lt;/div&gt;&lt;div&gt;            if (ch == 1) {&lt;/div&gt;&lt;div&gt;                div = document.getElementById('Div' + obj);&lt;/div&gt;&lt;div&gt;                img = document.getElementById('img' + obj);&lt;/div&gt;&lt;div&gt;            } else if (ch == 2) {&lt;/div&gt;&lt;div&gt;                div = document.getElementById('Division' + obj);&lt;/div&gt;&lt;div&gt;                img = document.getElementById('imgActuals' + obj);&lt;/div&gt;&lt;div&gt;            }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;            if (div.style.display == "none") {&lt;/div&gt;&lt;div&gt;                div.style.display = "block";&lt;/div&gt;&lt;div&gt;                if (row == 'alt') {&lt;/div&gt;&lt;div&gt;                    img.src = "../App_Themes/Two/images/minus.gif";&lt;/div&gt;&lt;div&gt;                }&lt;/div&gt;&lt;div&gt;                else {&lt;/div&gt;&lt;div&gt;                    img.src = "../App_Themes/Two/images/minus.gif";&lt;/div&gt;&lt;div&gt;                }&lt;/div&gt;&lt;div&gt;                img.alt = "Close to view other Details";&lt;/div&gt;&lt;div&gt;            }&lt;/div&gt;&lt;div&gt;            else {&lt;/div&gt;&lt;div&gt;                div.style.display = "none";&lt;/div&gt;&lt;div&gt;                if (row == 'alt') {&lt;/div&gt;&lt;div&gt;                    img.src = "../App_Themes/Two/images/plus.gif";&lt;/div&gt;&lt;div&gt;                }&lt;/div&gt;&lt;div&gt;                else {&lt;/div&gt;&lt;div&gt;                    img.src = "../App_Themes/Two/images/plus.gif";&lt;/div&gt;&lt;div&gt;                }&lt;/div&gt;&lt;div&gt;                img.alt = "Expand to show Details";&lt;/div&gt;&lt;div&gt;            }&lt;/div&gt;&lt;div&gt;        }&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;b&gt;Make a Dynamic Javascript Function Call from the ASP.Net Gridview Template fields. &lt;/b&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;asp:templatefield headertext="Sales Division"&gt;&lt;/asp:templatefield&gt;&lt;/div&gt;&lt;div&gt;&lt;itemtemplate&gt;&lt;/itemtemplate&gt;&lt;/div&gt;&lt;div&gt;&lt;i&gt;&lt;span class="Apple-style-span" style="font-style: normal;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/i&gt;&lt;/div&gt;&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SxOvx7okr_I/AAAAAAAAEu8/8E9s9jjRezI/s1600/grid.jpg"&gt;&lt;img src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SxOvx7okr_I/AAAAAAAAEu8/8E9s9jjRezI/s400/grid.jpg" border="0" alt="" id="BLOGGER_PHOTO_ID_5409860849758416882" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 400px; height: 98px; " /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;i id=""&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;Keep an Empty Div in a new Template Field where the Web Service result set (This result set would be returned by the &lt;b&gt;SuccessCallBack &lt;/b&gt;method of javascript.) would be displayed. A detailed table for the corresponding row item.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;&lt;asp:templatefield&gt;&lt;/asp:templatefield&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;    &lt;span class="Apple-style-span"  style="color:#3333FF;"&gt;&lt;itemtemplate&gt;&lt;/itemtemplate&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;&lt;&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt; &lt;itemtemplate&gt;&lt;/itemtemplate&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;&lt;b&gt;div &lt;/b&gt;id="Division" style="overflow: auto; width: 100%"&gt;&lt;b&gt;div&lt;/b&gt;&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#990000;"&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/i&gt;&lt;/div&gt;&lt;i id=""&gt;&lt;/i&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-6885570337034093620?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/6885570337034093620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=6885570337034093620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6885570337034093620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6885570337034093620'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/11/calling-aspnet-web-service-from.html' title='Calling an ASP.Net Web Service from Javascript'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4m9ZcVzpFsc/SxOvx7okr_I/AAAAAAAAEu8/8E9s9jjRezI/s72-c/grid.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1326936639440127002</id><published>2009-11-26T21:11:00.001-08:00</published><updated>2009-11-29T07:37:06.029-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Percentage Calculation'/><category scheme='http://www.blogger.com/atom/ns#' term='Gridview Control  Footer'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net 2.0'/><title type='text'>Calculating Percentage(%) in the ASP.Net Grid View Footer</title><content type='html'>Yet another scenario, calculating the percentage based on an common property. Say your Stored Procedure returns the ales and Expenses data pinned together, ORDER BY a particular field. Have a look at the below Grid view control. My stored procedure was returning only the Planned-Sales and Planned Expenses for each Division, for each year. M1, M2 M3...M12 represents the Months. &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/Sw987bEzXFI/AAAAAAAAEuU/_LwTDtJz-zg/s1600/grid.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5408679037817281618" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 88px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/Sw987bEzXFI/AAAAAAAAEuU/_LwTDtJz-zg/s400/grid.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="TEXT-ALIGN: left"&gt;The data which the Stored Procedure returns will be a repeated with Planned-Sales, Planned-Expense for each Sales Division. &lt;/div&gt;&lt;div style="TEXT-ALIGN: left"&gt; &lt;/div&gt;&lt;div style="TEXT-ALIGN: left"&gt;Bind your ASP&gt;Net grid view control with data.  Rest to be taken care at the &lt;strong&gt;Row Data Bound Event&lt;/strong&gt; of the grid view control. &lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;private void &lt;span style="color:#3333ff;"&gt;&lt;b&gt;BindMainGrid&lt;/b&gt;()&lt;/span&gt;&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;string vBdgYear = "2010";&lt;/div&gt;&lt;div&gt;string vSalesDivision = "1"; &lt;/div&gt;&lt;div&gt;string vYtdOrMtd = "YTD";&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (DrpBudgetYear.SelectedValue == "0")&lt;/div&gt;&lt;div&gt;{ vBdgYear = null; }&lt;/div&gt;&lt;div&gt;else { vBdgYear = DrpBudgetYear.SelectedValue; }&lt;/div&gt;&lt;div&gt;List&lt;dashboardanalyticsentity&gt; oEntity = new List&lt;dashboardanalyticsentity&gt;();&lt;/dashboardanalyticsentity&gt;&lt;/dashboardanalyticsentity&gt;&lt;/div&gt;&lt;div&gt;DashboardAnalyticsLogic oLogic = new DashboardAnalyticsLogic();&lt;/div&gt;&lt;div&gt;oEntity = oLogic.DashboardAnalytics(vBdgYear, vSalesDivision, vYtdOrMtd);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (oEntity.Count != 0)&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;GrvMain.DataSource = oEntity;&lt;/div&gt;&lt;div&gt;GrvMain.DataBind();&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;else&lt;/div&gt;&lt;div&gt;{    &lt;/div&gt;&lt;div&gt;LblMsg.Text = "No Record found";  &lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;/div&gt;&lt;div&gt;Declare some public variables to calculate the percentage of Expenses against Sales.  Go through the code snippet below, First IF condition checks for each data row, you can access each cell item values here with its index mentioned. Obviously, you would be knowing the number of coulmns of the grid view after bind. (I didnt get a chance where the same to be done with dynamicall colum growing grid ) .  The second IF finds the footer row and puts data into each cells after the calculation, which would be available from the public variable.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;See, first &lt;strong&gt;IF condition&lt;/strong&gt; takes you in when it is a data row with data. (Header row and Footer rows cant get into this loop.)&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#3333ff;"&gt;&lt;strong&gt;System.Int64 TotalM1, TotalM2, TotalM3, TotalM4, TotalM5, TotalM6;&lt;/strong&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;protected void&lt;span style="color:#3333ff;"&gt; &lt;b&gt;GrvMain_RowDataBound&lt;/b&gt;&lt;/span&gt;(object sender, GridViewRowEventArgs e)&lt;/div&gt;&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;if (e.Row.RowType == DataControlRowType.DataRow)&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;if (TotalM1 == 0) { TotalM1 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M1")); }&lt;/div&gt;&lt;div&gt;else { TotalM1 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M1")) * 100) / TotalM1; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (TotalM2 == 0) { TotalM2 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M2")); }&lt;/div&gt;&lt;div&gt;else { TotalM2 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M2")) * 100) / TotalM2; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (TotalM3 == 0) { TotalM3 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M3")); }&lt;/div&gt;&lt;div&gt;else { TotalM3 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M3")) * 100) / TotalM3; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (TotalM4 == 0) { TotalM4 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M4")); }&lt;/div&gt;&lt;div&gt;else { TotalM4 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M4")) * 100) / TotalM4; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (TotalM5 == 0) { TotalM5 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M5")); }&lt;/div&gt;&lt;div&gt;else { TotalM5 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M5")) * 100) / TotalM5; }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;if (TotalM6 == 0) { TotalM6 = Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M6")); }&lt;/div&gt;&lt;div&gt;else { TotalM6 = (Convert.ToInt64(DataBinder.Eval(e.Row.DataItem, "M6")) * 100) / TotalM6; }&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;else if (e.Row.RowType == DataControlRowType.Footer)&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;e.Row.Cells[0].Text = "Percentage";&lt;/div&gt;&lt;div&gt;e.Row.Cells[4].Text = Convert.ToString(TotalM1) + "%";&lt;/div&gt;&lt;div&gt;e.Row.Cells[5].Text = Convert.ToString(TotalM2) + "%"; &lt;/div&gt;&lt;div&gt;e.Row.Cells[6].Text = Convert.ToString(TotalM3) + "%";&lt;/div&gt;&lt;div&gt;e.Row.Cells[7].Text = Convert.ToString(TotalM4) + "%";&lt;/div&gt;&lt;div&gt;e.Row.Cells[8].Text = Convert.ToString(TotalM5) + "%";&lt;/div&gt;&lt;div&gt;e.Row.Cells[9].Text = Convert.ToString(TotalM6) + "%";&lt;/div&gt;&lt;div&gt;e.Row.Cells[1].HorizontalAlign = e.Row.Cells[2].HorizontalAlign = HorizontalAlign.Right;&lt;/div&gt;&lt;div&gt;e.Row.Font.Bold = true;&lt;/div&gt;&lt;div&gt;e.Row.Height = 28;&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;Let me tell you what i did in the Row Data Bound. You agree that the public variables would have value zero at the first time check from the IF condition? If &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1326936639440127002?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1326936639440127002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1326936639440127002' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1326936639440127002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1326936639440127002'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/11/calculating-percentage-in-aspnet-grid.html' title='Calculating Percentage(%) in the ASP.Net Grid View Footer'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/Sw987bEzXFI/AAAAAAAAEuU/_LwTDtJz-zg/s72-c/grid.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2535043025620622961</id><published>2009-11-22T21:03:00.000-08:00</published><updated>2009-12-04T23:01:14.488-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ITTI Pvt. Ltd.'/><category scheme='http://www.blogger.com/atom/ns#' term='Application Pool'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='Vijay Pias'/><title type='text'>The Template Persistent Cache initialization &amp; IIS Application Pool</title><content type='html'>&lt;span class="Apple-style-span" style="COLOR: rgb(51,51,51);font-size:small;" &gt;&lt;div&gt;A quite funny monday morning. Our network police, Mr.Pais rushed to the desk with his lappy and wooed, finding a strange issue with IIS application pool. Obvious, he wont stay cool until and unless finds a solution. The brainstomer had given a glimspe of the error message the Event Viewer had been throwing for the last whole week. He observed the issue was registering in the log every morning before the office hour starts. Here is the event viewr log. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Event Type: Error&lt;br /&gt;Event Source: Active Server Pages&lt;br /&gt;Event Category: None&lt;br /&gt;&lt;b&gt;Event ID: 5&lt;/b&gt;&lt;br /&gt;Date: 14/05/2004&lt;br /&gt;Time: 4:32:55 AM&lt;br /&gt;User: N/A&lt;br /&gt;Computer: 001DC001&lt;br /&gt;Description:&lt;br /&gt;&lt;br /&gt;Error: &lt;b&gt;The Template Persistent Cache initialization failed for Application Pool 'DefaultAppPool' because of the following error: Could not create a Disk Cache Sub-directory for the Application Pool. The data may have additional error codes.&lt;/b&gt;.&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;Googleoscoped the solution, suggested him the workaround.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;A. Add the NT AUTHORITY\NETWORK SERVICE account to&lt;br /&gt;&lt;b&gt;C:\WINDOWS\Help\iisHelp\common&lt;/b&gt; with "Read and Execute," "List Folder Contents" and "Read".&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;B. Add the NT AUTHORITY\NETWORK SERVICE account to&lt;br /&gt;&lt;b&gt;C:\WINDOWS\system32\inetsrv\ASP Compiled Templates&lt;/b&gt; with Full Control.&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;C. Add the NT AUTHORITY\NETWORK SERVICE account to&lt;br /&gt;&lt;b&gt;C:\WINDOWS\IIS Temporary Compressed Files&lt;/b&gt; with Full Control.&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Do an &lt;b&gt;IIS Reset&lt;/b&gt;. &lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;You know what, he never turned up saying the same. Issue must be solved. ;) &lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2535043025620622961?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2535043025620622961/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2535043025620622961' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2535043025620622961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2535043025620622961'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/11/template-persistent-cache.html' title='The Template Persistent Cache initialization &amp; IIS Application Pool'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7268120027630198707</id><published>2009-11-17T06:14:00.000-08:00</published><updated>2010-06-17T03:27:18.818-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Temporary Table'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL'/><title type='text'>Using Temporary Table, SQL Server 2005</title><content type='html'>&lt;div&gt;&lt;div&gt;&lt;div&gt;ALTER PROCEDURE dbo.BUDGET_COMMITMENT_QTY_REPORT&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@BudgetYear NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@BudgetVersion NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@Company NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@Division NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@CostCenter NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@SubAccount NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@SalesDivision NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@AsOnDate DATETIME = null&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;AS&lt;/div&gt;&lt;div&gt;SET NOCOUNT ON&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;DECLARE @Select NVARCHAR(4000)&lt;/div&gt;&lt;div&gt;DECLARE @Param NVARCHAR(4000)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SET @Param = ' @BudgetYear NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@BudgetVersion NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@Company NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@Division NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@CostCenter NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@SubAccount NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@SalesDivision NVARCHAR(50) = null,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;@AsOnDate DATETIME = null '&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE #TEMPTABLE &lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;   BudgetType NVARCHAR(50), BudgetYear NVARCHAR(50), Company NVARCHAR(50), Division NVARCHAR(50), SalesDivision NVARCHAR(50), Costcenter NVARCHAR(50), SubAccount NVARCHAR(50), Display NVARCHAR(50), Amount DECIMAL(29,2), Quantity DECIMAL(29,2), RQDate DateTime&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;INSERT INTO #TEMPTABLE&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SELECT     BUDGET_TYPE AS BudgetType, BUDGET_YEAR AS year, COMPANY_CODE AS Company, DIVISION_CODE AS Division, &lt;/div&gt;&lt;div&gt;                      SALES_DIVISION AS SalesDivision, COST_CENTER AS costCenter, SUB_ACCOUNT_CODE AS subAccount, 'Precommitment' AS Display, SUM(AMOUNT) &lt;/div&gt;&lt;div&gt;                      AS TotalValue, SUM(QUANTITY) AS Quantity, PR_REQ_DATE AS RQDate&lt;/div&gt;&lt;div&gt;FROM         ECMS_PR_BUDGET_CHECK&lt;/div&gt;&lt;div&gt;GROUP BY BUDGET_TYPE, BUDGET_YEAR, COMPANY_CODE, SALES_DIVISION, COST_CENTER, SUB_ACCOUNT_CODE, QUANTITY, DIVISION_CODE, &lt;/div&gt;&lt;div&gt;                      PR_REQ_DATE&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;UNION ALL&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SELECT     BUDGET_TYPE AS BudgetType, BUDGET_YEAR AS BudgetYear, COMPANY_CODE AS Company, DIVISION_CODE AS Division, &lt;/div&gt;&lt;div&gt;                      SALES_DIVISION AS SalesDivision, COST_CENTER AS CostCenter, SUB_ACCOUNT_CODE AS SubAccount, 'Commitment' AS Display, SUM(AMOUNT) &lt;/div&gt;&lt;div&gt;                      AS TotalValue, SUM(QUANTITY) AS Quantity, PO_REQ_DATE AS RQDate&lt;/div&gt;&lt;div&gt;FROM         ECMS_PO_BUDGET_CHECK&lt;/div&gt;&lt;div&gt;GROUP BY BUDGET_TYPE, BUDGET_YEAR, COMPANY_CODE, SALES_DIVISION, COST_CENTER, SUB_ACCOUNT_CODE, DIVISION_CODE, PO_REQ_DATE&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--SELECT * FROM #TEMPTABLE&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SET @Select = 'SELECT #TEMPTABLE.BudgetYear, #TEMPTABLE.Display, #TEMPTABLE.Amount, &lt;/div&gt;&lt;div&gt;#TEMPTABLE.Quantity, ECMS_MST_COMPANY.Company_Name, ECMS_MST_COST_CENTER.Cost_center_desc, &lt;/div&gt;&lt;div&gt;ECMS_MST_SUB_ACCOUNT.SUB_AC_NAME, ECMS_MST_SALES_DIVISION.SALES_DIVISION_NAME , ECMS_MST_DIVISION.DIVISION_NAME&lt;/div&gt;&lt;div&gt;FROM  #TEMPTABLE &lt;/div&gt;&lt;div&gt;INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_BUDGET_TYPE ON #TEMPTABLE.BudgetType = ECMS_MST_BUDGET_TYPE.BUDGET_CODE INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_COMPANY ON #TEMPTABLE.Company = ECMS_MST_COMPANY.Company_Code INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_COST_CENTER ON #TEMPTABLE.Costcenter = ECMS_MST_COST_CENTER.Cost_center_code INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_SUB_ACCOUNT ON #TEMPTABLE.SubAccount = ECMS_MST_SUB_ACCOUNT.SUB_AC_CODE INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_SALES_DIVISION ON #TEMPTABLE.SalesDivision = ECMS_MST_SALES_DIVISION.SALES_DIVISION_CODE INNER JOIN&lt;/div&gt;&lt;div&gt;           ECMS_MST_DIVISION ON #TEMPTABLE.Division = ECMS_MST_DIVISION.DIVISION_CODE '&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IF @BudgetYear&lt;&gt;0 AND @BudgetYear IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (BudgetYear=@BudgetYear) '&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IF @BudgetYear IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (BudgetType=@BudgetVersion) '&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;IF @Company&lt;&gt;0 AND @Company IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (Company=@Company) '&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;IF @Division&lt;&gt;0 AND @Division IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (Division=@Division) '&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;IF @SalesDivision&lt;&gt;0 AND @SalesDivision IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (SalesDivision=@SalesDivision) '&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;IF @Costcenter&lt;&gt;0 AND @Costcenter IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (Costcenter=@Costcenter) '&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;IF @SubAccount&lt;&gt;0 AND @SubAccount IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (SubAccount=@SubAccount) '&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;IF @AsOnDate&lt;&gt;0 AND @AsOnDate IS NOT NULL&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;SET @Select = @Select+ ' AND (RQDate&lt;=@AsOnDate) '&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--print @Select &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Execute sp_Executesql @Select, @Param , @BudgetYear, @BudgetVersion, @Company, @Division, @CostCenter, @SubAccount, @SalesDivision, @AsOnDate&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;END&lt;/div&gt;&lt;div&gt;SET NOCOUNT OFF&lt;/div&gt;&lt;div&gt;RETURN&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7268120027630198707?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7268120027630198707/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7268120027630198707' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7268120027630198707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7268120027630198707'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/11/using-temperory-table-sql-server-2005.html' title='Using Temporary Table, SQL Server 2005'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1110016504548000543</id><published>2009-10-09T07:27:00.000-07:00</published><updated>2009-10-09T07:52:27.934-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thumbnail on the fly'/><category scheme='http://www.blogger.com/atom/ns#' term='upload image'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Generating thumbnail of an image on the fly and saving it to the server.</title><content type='html'>&lt;p class="MsoNormal"&gt;Yup, yet another scenario where I fumed my mind. I was with a product catalogue application, for a POC (Proof of concept) to Malaysian client, where the registered users would be able to add a product details under a chosen category. The uploaded products will be listed in the home page based up on the category. Requirement was of very low complexity. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt;File upload control is quite enough to upload a file in the server, which was serving the basic of my yesterday’s requirement. The product listing page, for sure, has to show the thumbnail view of the images. The product images which the client was supplied where of huge size. (1024X768 kind of stuff). No wonder, I was allowed to have only a single file upload control in the page. I just started bending the chair behind, how do I have a thumbnail image with the same name of the parent image, in a different folder.&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; Didn’t take much time to get out of the problem, ASP.Net System.Drawing namespace is what we need to have to get this done.&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; Upload an image in to server with the file upload control. (Say a 1024X768 sized image)&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Generate random number generated from C# to give a unique name for the file which is going to be saved in the server. &lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;Generate the thumbnail image by specifying the width and height.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;color:blue;"&gt;private&lt;/span&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; &lt;span style="color:blue;"&gt;void &lt;/span&gt;UploadImage()&lt;br /&gt;{&lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;span style="color:blue;"&gt;if&lt;/span&gt; (UploadImage.HasFile)&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;{&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 255); "&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;try&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;{&lt;br /&gt;       &lt;span style="color:teal;"&gt;Random&lt;/span&gt; random = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;Random&lt;/span&gt;();&lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt;       &lt;/span&gt;&lt;span style="color:blue;"&gt;int&lt;/span&gt; randumNumber = random.Next(1000);&lt;br /&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Georgia;font-size:16px;"&gt;&lt;span style="  ;font-family:'Courier New';font-size:10pt;"&gt;  &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;color:blue;"&gt;string&lt;/span&gt;&lt;span style=" Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; FolderPath = Server.MapPath(&lt;span style="color:maroon;"&gt;"~"&lt;/span&gt;) + &lt;span style="color:maroon;"&gt;"\\ProductImages\\"&lt;/span&gt;;&lt;br /&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Georgia;font-size:16px;"&gt;&lt;span style="Courier New&amp;quot;; mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;color:blue;"&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;string&lt;/span&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; FileName = randumNumber.ToString() + &lt;span style="color:maroon;"&gt;"-"&lt;/span&gt; + UploadImage.FileName;&lt;br /&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;System.Drawing.&lt;span style="color:teal;"&gt;Image&lt;/span&gt; myImage = &lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;System.Drawing.&lt;span style="color:teal;"&gt;Image&lt;/span&gt;.FromStream(UploadImage.PostedFile.InputStream);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="Courier New&amp;quot;; mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt;&lt;o:p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;System.Drawing.&lt;span style="color:teal;"&gt;Image&lt;/span&gt; thumbnailImage = myImage.GetThumbnailImage(64, 64, &lt;span style="color:blue;"&gt;new&lt;/span&gt; System.Drawing.&lt;span style="color:teal;"&gt;Image&lt;/span&gt;.&lt;span style="color:teal;"&gt;GetThumbnailImageAbort&lt;/span&gt;(ThumbnailCallback), &lt;span style="color:teal;"&gt;IntPtr&lt;/span&gt;.Zero);&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt;&lt;o:p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;thumbnailImage.Save(FolderPath + &lt;span style="color:maroon;"&gt;"/thumbnails/"&lt;/span&gt; + FileName, System.Drawing.Imaging.&lt;span style="color:teal;"&gt;ImageFormat&lt;/span&gt;.Gif);&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;&lt;span style="color:green;"&gt;//thumbnails in different folder&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="Courier New&amp;quot;; mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt;&lt;o:p&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;UploadImage.SaveAs(FolderPath + &lt;span style="color:maroon;"&gt;"/"&lt;/span&gt; + FileName);&lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;}&lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;&lt;span style="color:blue;"&gt;catch&lt;br /&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;{&lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt;    &lt;/span&gt;MessageLabel.Text = &lt;span style="color:maroon;"&gt;"Unable to save the file"&lt;/span&gt;;&lt;span style="mso-spacerun:yes"&gt;              &lt;br /&gt;&lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="Courier New&amp;quot;; mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt;&lt;o:p&gt;&lt;span class="Apple-style-span"   style="  ;font-family:Georgia;font-size:16px;"&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;color:blue;"&gt;public&lt;/span&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; &lt;span style="color:blue;"&gt;bool&lt;/span&gt; ThumbnailCallback()&lt;br /&gt;{&lt;br /&gt;&lt;span style="color:blue;"&gt;  return&lt;/span&gt; &lt;span style="color:blue;"&gt;false&lt;/span&gt;;&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span class="Apple-style-span" style="font-size: small;"&gt;Thinks are simple once you have a try, until then it would be complex. Now my concern is to have a water mark of the company logo on the main image on the fly. Come down,&lt;/span&gt;&lt;span class="Apple-style-span"  style="font-size:medium;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;Genrating Watermark on the fly&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof:yesfont-family:&amp;quot;;font-size:10.0pt;color:blue;"&gt;private void&lt;/span&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof: yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; MakeWatermark()&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="mso-layout-grid-align:none;text-autospace:none"&gt;&lt;span style="Courier New&amp;quot;;mso-no-proof: yesfont-family:&amp;quot;;font-size:10.0pt;"&gt; {&lt;br /&gt;&lt;br /&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; sProduct = Server.MapPath(&lt;span style="color:maroon;"&gt;"ProductImage.jpg”&lt;/span&gt;);&lt;br /&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; sLogo = Server.MapPath&lt;span style="color:maroon;"&gt;("logo.gif");&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;System.Drawing.&lt;span style="color:teal;"&gt;Image&lt;/span&gt; oImage= Bitmap.FromFile(sProduct);&lt;br /&gt;Graphics oGraphics = Graphics.FromImage(sLogo);&lt;br /&gt;Bitmap oLogo = new Bitmap(s2);&lt;br /&gt;oGraphics.DrawImage(oLogo, new Point(&lt;span style="color:maroon;"&gt;70, 70&lt;/span&gt;));&lt;br /&gt;&lt;br /&gt;Response.ContentType = &lt;span style="color:maroon;"&gt;"image/JPEG"&lt;/span&gt;;&lt;br /&gt;oImage.Save(&lt;span style="color:teal;"&gt;Response&lt;/span&gt;.OutputStream, ImageFormat.Jpeg);&lt;br /&gt;&lt;br /&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1110016504548000543?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1110016504548000543/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1110016504548000543' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1110016504548000543'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1110016504548000543'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/10/generating-thumbnail-of-image-on-fly.html' title='Generating thumbnail of an image on the fly and saving it to the server.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4125668521956094224</id><published>2009-09-21T03:03:00.000-07:00</published><updated>2009-09-21T04:09:02.841-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Modal Popup Extender'/><category scheme='http://www.blogger.com/atom/ns#' term='Grid View Control'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Ajax'/><title type='text'>Ajax Modal Popup Extender and ASP.Net Grid View Control</title><content type='html'>Had gone through a couple of blogs about having the modal popup extender of ASP.Net AJAX invoked from the button click of Grid view rows.&lt;br /&gt;&lt;br /&gt;Posts w&lt;img src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SrdZHLVLIOI/AAAAAAAAErE/FdLoSpdszoY/s320/ajax.jpg" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 102px; height: 43px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5383869859380273378" /&gt;ere not many serving this requirement, though there were some where the Modal Popup Extender had been used in the Item Template of the grid view controls and the requirement is getting met. I could see the appreciations flowing to the blog poster. Well, I too appreciate those who took initiative to put forth a solution for the problem which ASP.Net developers have been facing.Now listen what I have to say you. &lt;strong&gt;Do you think keeping a control in an item template is a good and wise idea?&lt;/strong&gt; How many modal popup extender instances get created while rendering the grid view control if &lt;img src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SrdU2z5A-XI/AAAAAAAAEq0/mWaOVjthMuk/s320/Modal-Popup1.JPG" id="BLOGGER_PHOTO_ID_5383865180163733874" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 226px" alt="" border="0" /&gt;there are one hundred records, and hence one hundred rows? Am I making sense?&lt;br /&gt;Come on. keeping the modal popup extender inside the gridview’s item tempate is an absolute ridicule in this scenario. &lt;strong&gt;because, it is an overhead for the page&lt;/strong&gt;. There are some other ways to get it done. Yup, here is the alternative.&lt;br /&gt;&lt;br /&gt;Here we go, add a grid view in the page. Data bind the primary set of data where the result set primary key is, say RequestId in my scenario. Remove auto generate fields property of the columns of the grid view and add template fields to bind the result set. Keep an empty item template where we will later add the button, on click of this the popup to be invoked)&lt;br /&gt;&lt;br /&gt;Let the Model Popup Extender be out side the grid, in the page itself. Do the settings of the properties as it is required to have for the modal popup. I guess, I don’t have to go through the settings required for it in detail. (If not, &lt;a href="http://www.asp.net/ajax/ajaxcontroltoolkit/samples/modalpopup/modalpopup.aspx"&gt;take a sneak peak here in the ASP.Net AJAX site. It is quite explanatory&lt;/a&gt;.)&lt;br /&gt;&lt;br /&gt;Keep a Button, &lt;strong&gt;in the page (Not in the Grid view control)&lt;/strong&gt;, which has to be referred as the Target Control for the modal popup.&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;asp:Button ID="BtnPopUp" runat="server" Text="BtnPopUp" Width="0px"&lt;br /&gt;&lt;/span&gt;Notice the width of the button, it is set to zero, won’t be visible at all when page is rendered. Surprising?, come on, this is a tricky way of doing it!&lt;br /&gt;&lt;br /&gt;Insert a panel to the page from the Visual Studio toolbox; Keep a table in the panel where you can arrange your controls quite decently. Type “&lt;span style="color:#cc0000;"&gt;Click and Drag Popup Here&lt;/span&gt;” in the first row of the table where the id of the &lt;span style="color:#cc0000;"&gt;&lt;/span&gt;&lt;td&gt;element should be Id=”DragIt” and set the property runat=”server” for the TD element. This is to enhance the drag facility of the pop up throughout the page.&lt;br /&gt;&lt;br /&gt;Keep your Controls (Another grid view control to show the details of each rows? Well, add it then), which have to be popped up on click of the buttons rendered in the grid view, in the table, inside the panel &lt;span style="color:#cc0000;"&gt;(Control id = PnlResponse),&lt;/span&gt; give fixed width for the panel, say 350px.. BtnCancel refers the ID of the button in the panel, on click of which the pop up disappears.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;--&lt;span style="color:#cc0000;"&gt;cc1:ModalPopupExtender&lt;/span&gt; ID="MpeSendResponse" runat="server"&lt;br /&gt;TargetControlID="BtnPopUp"PopupControlID="PnlResponse"&lt;br /&gt;BackgroundCssClass="modalBackground"&lt;br /&gt;DropShadow="true"&lt;br /&gt;OkControlID="BtnCancel"&lt;br /&gt;CancelControlID="BtnCancel"PopupDragHandleControlID="DragIt"&gt;&lt;br /&gt;&lt;span style="color:#cc0000;"&gt;cc1:ModalPopupExtender&lt;/span&gt;—&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Well, now we need to add a b&lt;img src="http://4.bp.blogspot.com/_4m9ZcVzpFsc/SrdXN7TPqDI/AAAAAAAAEq8/buFl53PIl_U/s320/Modal-Popup2.JPG" style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 266px;" border="0" alt="" id="BLOGGER_PHOTO_ID_5383867776313042994" /&gt;utton control in the Item Template of the Grid view control.(&lt;span style="color:#990000;"&gt;Button control id=”GridsButton&lt;/span&gt;”) This Button has no settings for Model Popup extender.&lt;br /&gt;&lt;br /&gt;Keep it as it is and Edit Data Bindings of this button control and data bind the required PrimaryKey of the particular row. Ie, &lt;span style="color:#cc0000;"&gt;Set the command argument as Eval(“RequestId”)&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;Add a Command Event for this button and in the command event,&lt;br /&gt;&lt;br /&gt;You can get&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;protected void &lt;span style="color:#990000;"&gt;GridsButton_Command&lt;/span&gt;(object sender, CommandEventArgs e)&lt;br /&gt;{&lt;br /&gt;  Int64 RequestId = Convert.ToInt64(e.CommandArgument);&lt;br /&gt;  CallAnotherMethodToShowMoreDetails(RequestId);&lt;br /&gt;&lt;span style="color:#990000;"&gt;   MpeViewResponse.Show();&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;}&lt;br /&gt;&lt;b&gt;All you need to do is to just invoke the Show() method of modal popup extender.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#3333ff;"&gt;protected void &lt;span style="color:#990000;"&gt;CallAnotherMethodToShowMoreDetails&lt;/span&gt;(string RequestId)&lt;br /&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span style="color:#009900;"&gt;      //Do whatever you want with the RequestId.&lt;br /&gt;&lt;/span&gt;}&lt;br /&gt;You can fetch another set of records from the database by passing RequestId as the input parameter and display the result set in another grid view control kept in the pannel control (PnlResponse). Yup your pop up shows the details of the records when you click on the buttons in the parent grid view control.&lt;br /&gt;&lt;br /&gt;Doesn’t it make sense?&lt;/td&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4125668521956094224?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4125668521956094224/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4125668521956094224' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4125668521956094224'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4125668521956094224'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/09/aspnet-ajax-modal-popup-control-and.html' title='Ajax Modal Popup Extender and ASP.Net Grid View Control'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4m9ZcVzpFsc/SrdZHLVLIOI/AAAAAAAAErE/FdLoSpdszoY/s72-c/ajax.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5972784120276541674</id><published>2009-09-01T11:12:00.000-07:00</published><updated>2009-09-01T11:14:58.087-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='MDX'/><category scheme='http://www.blogger.com/atom/ns#' term='SSAS'/><category scheme='http://www.blogger.com/atom/ns#' term='BI'/><category scheme='http://www.blogger.com/atom/ns#' term='OLAP Cubes'/><title type='text'>MDX and SQL, the kissing cousins!</title><content type='html'>Quite interesting, yeah! Here we go,&lt;br /&gt;&lt;br /&gt;If SQL is meant for create manage and query Relational Databases in OLTP(Online Transaction Processing) Systems, MDX, The Multi Dimensional Extension, is to perform calculations in OLAP(Online Analytical Processing) Databases.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Why MDX, and how important it is in Business Intelligence?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;It is to query, navigate, and perform calculations in OLAP databases. OLAP databases are usually called as CUBES. Cubes are so called as the OLAP Databases comprises of multi Dimensional data.  Though the cubes can have dozens of dimensions but rarely goes more than 15 to 20 to make them easier/understandable to work with. Cube consists of dimensions, hierarchies, levels, attributes and measures. MDX has been the strength of reporting and analysis in Business Intelligence (BI) as it supported virtually by many of the BI Server giants like Microsoft, IBM, Hyperion and SAP.&lt;br /&gt;&lt;br /&gt;OLAP cubes are multidimensional database model which consists of measures and dimensions joined though a central fact table. As the arrangement of dimensions with a central fact table resembles a ‘star’, multidimensional database are called as ‘Star schemas’. At the same time we can compare OLTP database with ‘Spider Web’ as plenty of tables joined together through a complex set of primary and foreign key relationships. &lt;br /&gt;&lt;br /&gt;Although you can theoretically query an OLAP cube using SQL, SQL has no inherent knowledge of dimension hierarchies and cannot easily navigate to the parent or children of a particular dimension member. Here comes the advantage of MDX over SQL. It can be used to navigate, query and perform calculations against multidimensional structures. Examples of Multidimensional structures are OLAP Cubes, dimensions, hierarchies, levels, attributes, members and measures.&lt;br /&gt;&lt;br /&gt;MDX can recognize all kind of dimension relationship from ancestors to descendants f, from members to siblings, from root to leaf with very little coding. PeriodsToDate, LastPeriods, ParallelPeriod, YTD, QTD are few of the interesting 200 functions MDX have. (Interestingly, ParallelPeriod picks the data from a current period to the same period a year ago.) The queries for bringing these results in SQL would consume huge time and lines of code.&lt;br /&gt;&lt;br /&gt;MDX was born on top of SQL to provide code consumption in dealing OLAP Server. OLAP Server was the invention of a third party called Panorama, and lately it was acquired by Microsoft.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5972784120276541674?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5972784120276541674/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5972784120276541674' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5972784120276541674'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5972784120276541674'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/09/mdx-and-sql-kissing-cousins.html' title='MDX and SQL, the kissing cousins!'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2142338098160490820</id><published>2009-08-18T10:43:00.000-07:00</published><updated>2009-08-18T10:56:35.368-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Previous Page'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Back Button'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net 2.0'/><title type='text'>Back button / Previous Page button in ASP.Net  C#</title><content type='html'>&lt;strong&gt;Enabling Back Button in ASP.Net&lt;br /&gt;&lt;/strong&gt;There are different ways of doing it.  I will just take you through two simple solutions.&lt;br /&gt;&lt;strong&gt;First way is quite simple.  A straight forward approach.&lt;/strong&gt;&lt;br /&gt;Declare a string variable public&lt;br /&gt;static string goBackUrl = String.Empty;&lt;br /&gt;protected void Page_Load(object sender, EventArgs e)&lt;br /&gt;{&lt;br /&gt;if (!IsPostBack)&lt;br /&gt;   { &lt;br /&gt;    goBackUrl = Request.UrlReferrer.ToString();&lt;br /&gt;   }&lt;br /&gt;}&lt;br /&gt;protected void BackButton_Click(object sender, EventArgs e)&lt;br /&gt;{   &lt;br /&gt;Response.Redirect(goBackUrl);&lt;br /&gt;}&lt;br /&gt;&lt;strong&gt;Second one is with View State.&lt;/strong&gt;&lt;br /&gt;protected void Page_Load(object sender, EventArgs e)   &lt;br /&gt;{     &lt;br /&gt;  if (!IsPostBack)      &lt;br /&gt;{&lt;br /&gt;          GoBackURL = Request.UrlReferrer.ToString();           &lt;br /&gt;          ViewState.Add("GoBackURL", GoBackURL);      &lt;br /&gt;}      &lt;br /&gt;else       &lt;br /&gt;{           &lt;br /&gt;GoBackURL = ViewState["GoBackURL"].ToString();       &lt;br /&gt;}&lt;br /&gt;protected void BackButton_Click(object sender, EventArgs e)&lt;br /&gt;{       &lt;br /&gt;     Response.Redirect(BackPath, false);&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2142338098160490820?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2142338098160490820/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2142338098160490820' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2142338098160490820'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2142338098160490820'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/back-button-previous-page-button-in.html' title='Back button / Previous Page button in ASP.Net  C#'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4568702842722196002</id><published>2009-08-12T21:31:00.000-07:00</published><updated>2009-08-12T21:43:36.422-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='FTP'/><category scheme='http://www.blogger.com/atom/ns#' term='IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='WebDev Feature IIS'/><category scheme='http://www.blogger.com/atom/ns#' term='Internet Information Services'/><title type='text'>A Comparison of Traditional FTP Upload &amp; WebDAV Feature of IIS</title><content type='html'>&lt;span style="font-weight: bold;"&gt;FTP (File Transfer Protocol) &amp;amp; IIS WebDAV&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Why WebDEV and whats wrong with FTP?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The traditional method for uploading content to a web server is File Transfer Protocol (FTP), but using this approach has its disadvantages:&lt;br /&gt;•    Using FTP requires that you open additional ports on your perimeter firewall, and this can increase the attack surface of your network and make it more susceptible to penetration by attackers. This is obviously undesirable from the perspective of keeping your network secure.&lt;br /&gt;&lt;br /&gt;•    FTP has no file locking mechanism, so it’s possible for two users to upload different versions of the same file simultaneously causing one to be overwritten. This can mean lost time troubleshooting why an uploaded file is different from what you expect.&lt;br /&gt;&lt;br /&gt;•    The FTP approach means you have to edit your content locally on the client. In other words, to edit a page already on the web server you would have to download it to the client, edit it there, and then upload it again to the web server. This is a time-consuming and inefficient approach to managing content.&lt;br /&gt;WebDAV offers the solution for all the above problem scenarios, It’s a protocol used for publishing and managing content to web servers. WebDAV is an extension of the HTTP/1.1 protocol described in RFCs 2518 and 3253. WebDAV overcomes the three issues described above as follows:&lt;br /&gt;•    WebDAV uses port 80, the same port used by HTTP for web access. So using WebDAV means you don’t have to open any extra ports on your firewall.&lt;br /&gt;&lt;br /&gt;•    WebDAV lets only one user modify a file at a time, while allowing multiple users to read it. This allows files to be locked while they are being edited, preventing unexpected changes from occurring.&lt;br /&gt;&lt;br /&gt;•    WebDAV lets you edit files on the server instead of needing to download them first to the client. Editing files remotely using WebDAV is as easy as if they were locally present, and the whole process is transparent to the content producer.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;How to Install and Use WebDEV on your Server?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;When we use Windows Server 2003 machine to the role of Application Server, it installs various IIS 6 components but WebDAV isn’t one of these components installed. This is different from the earlier Windows 2000 Server platform where installing IIS 5 automatically installed WebDAV as well. To install WebDAV on the IIS 6 machine, use Add or Remove Programs in Control Panel and run the Windows Components Wizard. You can see WebDAV under Application Server &gt; Internet Information Services &gt; World Wide Web Service &gt; WebDAV Publishing. Check it and Install.&lt;br /&gt;&lt;br /&gt;You need to enable it for IIS after the installation. To verify if enabled, check the WebDAV option under the Web Service Extensions node in IIS Manager.  Open IIS (Start&gt;Run&gt;inetmgr) See Web Service Extensions at the left pane. You will be able to se WebDEV at the right pane, if you select the Wen\b Service WExtension from the left pane. Make sure that it is Allowed. Be noticed, when WebDAV extension (httpext.dll) is Allowed,  it would be applicable for all websites on your server. IIS unfortunately does not let you configure WebDAV for each and every website separately.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What to be set at Client side?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;To create and manage content for your website , WebDAV to be enabled on the client machines. Windows XP has a built-in WebDAV client that doesn’t need to be installed, only enabled. To &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoOYy-tUvUI/AAAAAAAAEkE/f9GgNN0hY28/s1600-h/image002.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 239px; height: 320px;" src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoOYy-tUvUI/AAAAAAAAEkE/f9GgNN0hY28/s320/image002.png" alt="" id="BLOGGER_PHOTO_ID_5369303182349745474" border="0" /&gt;&lt;/a&gt;enable WebDAV on XP, open the Services console under Administrative Tools and find the WebClient service and double-click on this service to open its Properties. Change the Startup Type to Automatic, then click the Start button to run the service. Now you can publish the site content to your web server.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Settings on the Server for WebDAV&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The physical directory where the Virtual directory points to be given read/write/directory listing permissions.&lt;br /&gt;To publish content with WebDAV, the following web permissions on the directory to be enabled.&lt;br /&gt;1.    Read - lets users read what has been published to the server&lt;br /&gt;2.    Write - lets users upload new content to the server and edit existing content on the server&lt;br /&gt;3.    Directory listing - lets users view a list of published files on the server so they can select the one they want to view or edit.&lt;br /&gt;If the Access is going to be given for a particular user group, It has to have  Read, Read &amp;amp; Execute, and List Folder Contents permission. These are necessary for WebDAV users to be able to write and modify content on the web server. There are also two additional special permissions that the Users group has Create Files / Write Data,  Create Folders / Append Data. These permissions too are necessary for WebDAV publishing, so don’t change them.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Publishing content with WebDEV&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Go to Internet Explorer’s Menu, File&gt;Open&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoOZOWr2VnI/AAAAAAAAEkM/38RoAkVDcR8/s1600-h/image003.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 164px;" src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoOZOWr2VnI/AAAAAAAAEkM/38RoAkVDcR8/s320/image003.png" alt="" id="BLOGGER_PHOTO_ID_5369303652642477682" border="0" /&gt;&lt;/a&gt;Check the ‘Open as Web‘ check box. Window will be opened with 0 Object displayed.&lt;br /&gt;&lt;br /&gt;Now, drag and drop your Local files in this window, it reaches at the root of your Virtual Directory’s root on the remote server!. You can browse it as http://162.61.39.8/Assetice/NewFile.aspx&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoOZSOggTrI/AAAAAAAAEkU/4y42UQl4zn8/s1600-h/image004.png"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 213px;" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoOZSOggTrI/AAAAAAAAEkU/4y42UQl4zn8/s320/image004.png" alt="" id="BLOGGER_PHOTO_ID_5369303719166889650" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4568702842722196002?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4568702842722196002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4568702842722196002' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4568702842722196002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4568702842722196002'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/comparison-of-traditional-ftp-upload.html' title='A Comparison of Traditional FTP Upload &amp; WebDAV Feature of IIS'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoOYy-tUvUI/AAAAAAAAEkE/f9GgNN0hY28/s72-c/image002.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5626886343199748696</id><published>2009-08-12T02:03:00.000-07:00</published><updated>2009-10-29T20:05:38.121-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Save images in SQL Server'/><category scheme='http://www.blogger.com/atom/ns#' term='Generic Handler in ASP.Net'/><title type='text'>Generic Handlers to display images from database in a gridview from database.</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Generic Handler ; A ‘Generic’ way to find the solution.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Was fuming my head to fetch the logo image from SQL Server database (Not the URL, Image stored as the type image, in binary format). Plenty of try outs could lead me in to the solution.&lt;br /&gt;&lt;br /&gt;ASP.Net 2.0 does not allow images(binary format) from the database and directly databind to a control in the page. There are some tricky things to get it done, Take a sneak peak.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Here is my Company Master Table&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoJQhRz44pI/AAAAAAAAEjc/Y5TYQ5w1pQI/s1600-h/Logo-Table.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 126px;" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoJQhRz44pI/AAAAAAAAEjc/Y5TYQ5w1pQI/s320/Logo-Table.jpg" alt="" id="BLOGGER_PHOTO_ID_5368942238425997970" border="0" /&gt;&lt;/a&gt;Allow null I used as this field was an addition to the master table which has got references to the transactions. Hope you understood the significance of allowed null. Well, leave that topic, it doesn’t make any sense in this topic.&lt;br /&gt;&lt;br /&gt;I had to deal with two presentation layer files for this scenario. One is the .aspx page where my grid view sits with data bound with all the company information, except the logo, and the other, an ASHX file to custom handle the request. Try binding the logo entity to the server side image control, its not gonna work out.&lt;br /&gt;&lt;br /&gt;So bind all other fields of Company master to the grid’s item templates and see how the image can be displayed. Here comes the role of Generic Handler.&lt;br /&gt;&lt;br /&gt;Generic Handlers are equivalent to custom handlers and they contain classes that fully implement IHttpHandler. All you need is to simply surf the Generic Handler (ASHX) files and they're compiled automatically just as ASPX file works.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Advantages of Generic Handlers&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The advantage of using the generic handler is twofold. First, it's usually much more convenient to generate a simple handler than it is to create a whole new assembly to handle the request. Second, you don't need to run interference with either Web.Config or with IIS. That is, Web.Config and IIS already understand what to do about files with the extension of .ashx. Installing ASP.NET places those when mapping into IIS.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Limitations&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;However, ASHX files have the same limitations as ASPX and ASCX files in terms of their place in an ASP.NET project. Simple generic handlers go with the project. That is, for the handler to work, it must accompany the whole project. Alternatively, custom handlers deployed as separate assemblies may be deployed and shared among the enterprise as Global Assembly assemblies (that is, strongly named assemblies placed in the Global Assembly Cache).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Back to our problem; added an image control in the template field of the grid view where I had to load the Company Logo.Hope you know the way of creating a Generic Handler. If not follow these steps.&lt;br /&gt;Right click on the Website Project and Add New item in the Solution Explorer of Visual Studio IDE.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_4m9ZcVzpFsc/SoJTSvpct1I/AAAAAAAAEj8/0iq7OK8_nAs/s1600-h/Generic-Handler-in-ASPNet.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 215px;" src="http://3.bp.blogspot.com/_4m9ZcVzpFsc/SoJTSvpct1I/AAAAAAAAEj8/0iq7OK8_nAs/s320/Generic-Handler-in-ASPNet.jpg" alt="" id="BLOGGER_PHOTO_ID_5368945287272118098" border="0" /&gt;&lt;/a&gt;&lt;meta equiv="Content-Type" content="text/html; charset=utf-8"&gt;&lt;meta name="ProgId" content="Word.Document"&gt;&lt;meta name="Generator" content="Microsoft Word 12"&gt;&lt;meta name="Originator" content="Microsoft Word 12"&gt;My Stored Procedure fetches the image field from Company Master for a particular Company ID. This ID had to be provided from the Grid View’s Item template as a Query String to the Generic Handler.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoJR_cOr1kI/AAAAAAAAEjs/u2gbUuC_FYs/s1600-h/Image-from-Database-Grid-Vi.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 44px;" src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SoJR_cOr1kI/AAAAAAAAEjs/u2gbUuC_FYs/s320/Image-from-Database-Grid-Vi.jpg" alt="" id="BLOGGER_PHOTO_ID_5368943856130446914" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;No big deal, accepted the query string and passed it to Stored Procedure and fetch the data as byte[]. Did a binary write of the fetched data. From the ASPX page, ie, my Master Dot Net Page,&lt;div&gt;&lt;div&gt;&lt;br /&gt;public void ProcessRequest (HttpContext context) {&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;        SqlConnection con = new SqlConnection();&lt;/div&gt;&lt;div&gt;        con.ConnectionString = ConfigurationManager.ConnectionStrings["MyConnString"].ConnectionString;&lt;/div&gt;&lt;div&gt;        SqlCommand cmd = new SqlCommand();&lt;/div&gt;&lt;div&gt;        &lt;/div&gt;&lt;div&gt;        cmd.CommandText = "select CH_CMP_LOGO from CH_CMP_INFO where CH_CMP_ID = @ID";&lt;/div&gt;&lt;div&gt;        cmd.CommandType = System.Data.CommandType.Text;&lt;/div&gt;&lt;div&gt;        cmd.Connection = con;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;        SqlParameter ImageID = new SqlParameter("@ID", System.Data.SqlDbType.Int);&lt;/div&gt;&lt;div&gt;        ImageID.Value = context.Request.QueryString["ID"];&lt;/div&gt;&lt;div&gt;        cmd.Parameters.Add(ImageID);&lt;/div&gt;&lt;div&gt;        con.Open();&lt;/div&gt;&lt;div&gt;        SqlDataReader dReader = cmd.ExecuteReader();&lt;/div&gt;&lt;div&gt;        dReader.Read();&lt;/div&gt;&lt;div&gt;        context.Response.BinaryWrite((byte[])dReader["CH_CMP_LOGO"]);&lt;/div&gt;&lt;div&gt;        dReader.Close();&lt;/div&gt;&lt;div&gt;        con.Close();   &lt;/div&gt;&lt;div&gt;                &lt;/div&gt;&lt;div&gt;    } &lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt; I could browse and view the company listing.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoJSRHgBBvI/AAAAAAAAEj0/WBhCKzhfPoE/s1600-h/Listing.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 320px; height: 84px;" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoJSRHgBBvI/AAAAAAAAEj0/WBhCKzhfPoE/s320/Listing.jpg" alt="" id="BLOGGER_PHOTO_ID_5368944159803639538" border="0" /&gt;&lt;/a&gt;Happy!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;sorry, i forgot to tell about the data access layer specialty to fetch the image. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;int logoImageIndex = reader.GetOrdinal("CH_CMP_LOGO");&lt;/div&gt;&lt;div&gt;if (!reader.IsDBNull(logoImageIndex))&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;companyListingEntity.LogoImage = new Byte[(reader.GetBytes(logoImageIndex, 0, null, 0, int.MaxValue))];&lt;/div&gt;&lt;div&gt;reader.GetBytes(logoImageIndex, 0, companyListingEntity.LogoImage, 0, companyListingEntity.LogoImage.Length);&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5626886343199748696?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5626886343199748696/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5626886343199748696' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5626886343199748696'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5626886343199748696'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/generic-handlers-to-display-images-from.html' title='Generic Handlers to display images from database in a gridview from database.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/SoJQhRz44pI/AAAAAAAAEjc/Y5TYQ5w1pQI/s72-c/Logo-Table.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4682955446500874455</id><published>2009-08-10T08:01:00.000-07:00</published><updated>2009-08-11T09:38:03.941-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='AK Sabin'/><category scheme='http://www.blogger.com/atom/ns#' term='Application Pool'/><category scheme='http://www.blogger.com/atom/ns#' term='WSS'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS'/><title type='text'>Service Unavailable error message when you browse a MOSS / WSS site or Central Admin.</title><content type='html'>IIS must be the reason for this. Do an IIS reset and see. If the problem persists, Just check the farm administrators password which has been set on the &lt;span style="FONT-WEIGHT: bold"&gt;Application Pool&lt;/span&gt;.&lt;br /&gt;To see this, go to Application Pool of both your site and the Central Administration site and right click to see the properties. Go to Identity tab and see the account name.&lt;br /&gt;&lt;br /&gt;Make sure that the password is latest. If your network policy is defined some password expiration policy, you must have changed the password of the farm admin's domain password. Some times this to be reset in the Application Pool also. Do it for all the application pools of the sites which are not running and saying 'Service Unavailable'.&lt;br /&gt;Give the new password in the identity tab and reset the iis.&lt;br /&gt;&lt;span style="FONT-WEIGHT: bold"&gt;run&gt;cmd&gt; iisreset&lt;/span&gt;&lt;br /&gt;Hope it works fine now.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4682955446500874455?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4682955446500874455/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4682955446500874455' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4682955446500874455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4682955446500874455'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/service-unavailable-error-message-when_10.html' title='Service Unavailable error message when you browse a MOSS / WSS site or Central Admin.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-6519077535784326649</id><published>2009-08-05T04:25:00.000-07:00</published><updated>2009-08-05T04:34:14.763-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='jQuery'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net 2.0'/><title type='text'>What next? Yeah, I got JQuery in hand !</title><content type='html'>What next, if the server side controls are rendered in to pure html? Has developer all done with coding? Not at all, jQuery can do a million at the front end.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/Snls3XEtOVI/AAAAAAAAEjI/DO1I9BNhXfA/s1600-h/jQuery.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366440129331018066" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 81px; CURSOR: hand; HEIGHT: 81px" alt="" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/Snls3XEtOVI/AAAAAAAAEjI/DO1I9BNhXfA/s320/jQuery.jpg" border="0" /&gt;&lt;/a&gt; Quite surprisingly, the client manager asked us to display the details of an internal order in a new table right after the selected row of the grid view by adding a new row in the grid view. What to do when the server side code has lost the control after the code has been rendered in to the browser? We went Google to come out of the trouble.&lt;br /&gt;&lt;br /&gt;jQuery was the answer we found to relax a bit. The code snippets we found during our search made us wonder line by line. Hours of R&amp;amp;D brought us delight, could present it pretty decently up to the expectation.&lt;br /&gt;&lt;br /&gt;Have a sneak peek here, this is the way we done it.&lt;br /&gt;Added a button control in the item template of the Grid view. Attached a VB.Net Function in the Client Click event of the button, passing the Internal Order Number (PK) to it.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SnltUSlYp-I/AAAAAAAAEjQ/orEUVuDodss/s1600-h/JQuery-code.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5366440626342111202" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 141px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_4m9ZcVzpFsc/SnltUSlYp-I/AAAAAAAAEjQ/orEUVuDodss/s320/JQuery-code.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This VB Function triggers the Javascript Function defined in an external file. Passing Internal Order number and the current object Id. This Javascript method gets the parent object of the button, which is a &lt;td&gt;element with help of jQuery and the &lt;tr&gt;object with the help of TD object.&lt;br /&gt;&lt;br /&gt;Checking the value of the button control for + ( ie in collapsed mode ) and if collapsed, calling a Web service which returns the Result set for a particular Internal Order Number.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Just see how handy jQuery is&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#990000;"&gt;function LoadSummaryDetails(internalOderno,btnID, myObj)&lt;br /&gt;{&lt;br /&gt;btn=$('#'+btnID);&lt;br /&gt;var btnVal=$(btn).attr('value');&lt;br /&gt;td=$('#'+btnID).parent();&lt;br /&gt;tr=$(td).parent();&lt;br /&gt;&lt;br /&gt;if(btnVal == '+')&lt;br /&gt;{&lt;br /&gt;InternalOrder.InternalOrderXmlData.GenerateChildSummaryDetails(internalOderno,GridSucceedCallback);&lt;br /&gt;}&lt;br /&gt;else&lt;br /&gt;{&lt;br /&gt;$(btn).attr('value','+');&lt;br /&gt;$(btn).attr('class','Expand');&lt;br /&gt;var nextRow= $(tr).next();&lt;br /&gt;$(nextRow).remove();&lt;br /&gt;}&lt;br /&gt;return false&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;Web Service method returns a result set as a string object with the help of a string builder object.&lt;br /&gt;The Callback function associated with the web service call does the following steps&lt;br /&gt;&lt;br /&gt;1. Assigns the value ‘-‘ to the grid’s button ( To ‘Expanded’ mode)&lt;br /&gt;2. Setting the CSS class for the button.&lt;br /&gt;3. Creating a newRow object and adding the result set returned by the Web service to it.&lt;br /&gt;4. Adding the row after the current row.&lt;br /&gt;&lt;br /&gt;&lt;span style="color:#cc0000;"&gt;function GridSucceedCallback(result,eventAgrs)&lt;br /&gt;{&lt;br /&gt;$(btn).attr('value','-');&lt;br /&gt;$(btn).attr('class','Collapse');&lt;br /&gt;&lt;br /&gt;var newRow = $("&lt;tr&gt;&lt;/tr&gt;");&lt;br /&gt;$(newRow).append("&lt;td&gt; &lt;/td&gt;&lt;td colspan="8"&gt;"+result+"&lt;/td&gt;");&lt;br /&gt;$(tr).after(newRow);&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;See the else block of the LoadSummaryDetails() function.&lt;br /&gt;&lt;span style="color:#006600;"&gt;$(btn).attr('value','+');&lt;br /&gt;$(btn).attr('class','Expand');&lt;br /&gt;var nextRow= $(tr).next();&lt;br /&gt;$(nextRow).remove();&lt;br /&gt;&lt;/span&gt;On Click of ‘Collapse‘ button,&lt;br /&gt;1. Set the value back to ‘+’ ( to ‘Collapsed’ mode)&lt;br /&gt;2. Changing the css style&lt;br /&gt;3. Getting the next row of the current row object where the Detials have been added.&lt;br /&gt;4. Removing the row.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-6519077535784326649?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/6519077535784326649/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=6519077535784326649' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6519077535784326649'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/6519077535784326649'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/what-next-yeah-i-got-jquery-in-hand.html' title='What next? Yeah, I got JQuery in hand !'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/Snls3XEtOVI/AAAAAAAAEjI/DO1I9BNhXfA/s72-c/jQuery.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5026849715901908268</id><published>2009-08-05T02:29:00.000-07:00</published><updated>2010-05-13T22:26:40.978-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2007'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS Development'/><title type='text'>How to know the version of the SharePoint you are using</title><content type='html'>Go to Control Panel -&gt; Add and Remove Programs.&lt;br /&gt;OR, Go to (Windows) Start&gt;Run&gt;&lt;br /&gt;Type&lt;strong&gt; appwiz.cpl&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5366424640024741138" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_4m9ZcVzpFsc/Snlexw6UBRI/AAAAAAAAEjA/VT4R2Mvq2eA/s320/Run.JPG" border="0" /&gt;&lt;br /&gt;Select the product (sharepoint server) and then click: Click here for support. &lt;/p&gt;&lt;p&gt;Or: Under &lt;strong&gt;Tasks&lt;/strong&gt;, Click &lt;strong&gt;"View Installed Updates"&lt;/strong&gt;&lt;br /&gt;Doesn't it answer your querry? :) Window must have popped up and said about your current SharePoint version. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5026849715901908268?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5026849715901908268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5026849715901908268' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5026849715901908268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5026849715901908268'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/08/how-to-know-version-of-sharepoint-you.html' title='How to know the version of the SharePoint you are using'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_4m9ZcVzpFsc/Snlexw6UBRI/AAAAAAAAEjA/VT4R2Mvq2eA/s72-c/Run.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3657639532261351787</id><published>2009-07-11T12:38:00.001-07:00</published><updated>2009-09-21T04:36:58.449-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web.config'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><category scheme='http://www.blogger.com/atom/ns#' term='Website'/><title type='text'>It is an error to use a section registered as allowDefinition='MachineToApplication' beyond application level, More than one Web.config</title><content type='html'>You may get this error when trying to browse an asp.net application.&lt;br /&gt;&lt;br /&gt;The debug information shows that "This error can be caused by a virtual directory not being configured as an application in IIS."&lt;br /&gt;&lt;br /&gt;However, this error occurs primarily out of 2 scenarios.&lt;br /&gt;&lt;br /&gt;1. When you create an new web application using visual studio.net, it automatically creates the virtual directory and configures it as an application.&lt;br /&gt;However, if you manually create the virtual directory and it is not configured as an application, then you will not be able to browse the application and&lt;br /&gt;may get the above error. The debug information you get as mentioned above, is applicable to this scenario.&lt;br /&gt;&lt;br /&gt;To resolve it, Right Click on the virtual directory - select properties and then click on "Create" next to the "Application" Label and the textbox. It will&lt;br /&gt;automatically create the "application" using the virtual directory's name. Now the application can be accessed.&lt;br /&gt;&lt;br /&gt;2. When you have sub-directories in your application, you can have web.config file for the sub-directory. However, there are certain properties which cannot&lt;br /&gt;be set in the web.config of the sub-directory such as authentication, session state (you may see that the error message shows the line number where the&lt;br /&gt;authentication or sessionstate is declared in the web.config of the sub-directory). The reason is, these settings cannot be overridden at the sub-directory level&lt;br /&gt;unless the sub-directory is also configured as an application (as mentioned in the above point).&lt;br /&gt;&lt;br /&gt;Mostly we have the practice of adding web.config in the sub-directory if we want to protect access to the sub-directory files (say, the directory is admin and we&lt;br /&gt;wish to protect the admin pages from unathorized users).&lt;br /&gt;&lt;br /&gt;But actually, this can be achieved in the web.config at the application's root level itself, by specifing the location path tags and authorization, as follows:-&lt;br /&gt;&lt;location path="Admin"&gt;&lt;system.web&gt;&lt;authorization&gt;&lt;allow roles="administrators"&gt;&lt;deny users="*"&gt;&lt;/deny&gt;&lt;/allow&gt;&lt;/authorization&gt;&lt;/system.web&gt;&lt;/location&gt;&lt;br /&gt;However, if you wish to have a web.config at the sub-directory level and protect the sub-directory, you can just specify the Authorization mode as follows:-&lt;br /&gt;&lt;configuration&gt;&lt;system.web&gt;&lt;authorization&gt;&lt;allow roles="administrators"&gt;&lt;deny users="*"&gt;&lt;/deny&gt;&lt;/allow&gt;&lt;/authorization&gt;&lt;/system.web&gt;&lt;/configuration&gt;&lt;br /&gt;Thus you can protect the sub-directory from unauthorized access.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3657639532261351787?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3657639532261351787/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3657639532261351787' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3657639532261351787'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3657639532261351787'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/07/it-is-error-to-use-section-registered_11.html' title='It is an error to use a section registered as allowDefinition=&apos;MachineToApplication&apos; beyond application level, More than one Web.config'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3738979796500504456</id><published>2009-06-18T13:19:00.000-07:00</published><updated>2009-06-18T13:24:31.193-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Menu Mouse Hover'/><category scheme='http://www.blogger.com/atom/ns#' term='Menu control'/><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Menu Alignment'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net 2.0'/><title type='text'>Menu control (Asp.net 2.0) is not displaying properly in Google chrome and IE8 (Beta).</title><content type='html'>Though the Asp.net 2.0 menu control was displaying fine in IE 6 and Mozilla, There were issues with mouse hover styles and alignment in Google Chrome and IE 8. I was scratching my head over and over for long. &lt;br /&gt;&lt;br /&gt;Could find a solution to tackle this issue. This is really interesting. &lt;br /&gt;&lt;br /&gt;The C# version of the solution is as follows:&lt;br /&gt;&lt;br /&gt;( If you got a master page for the application / website, write this snippet in it's PreInit event )&lt;br /&gt;&lt;br /&gt;    protected void Page_PreInit(object sender, EventArgs e)&lt;br /&gt;    {&lt;br /&gt;        if (!IsPostBack)&lt;br /&gt;        {&lt;br /&gt;            if ((Request.UserAgent.IndexOf("AppleWebKit") &gt; 0 ) || (Request.UserAgent.IndexOf("Unknown") &gt; 0 ) || ( Request.UserAgent.IndexOf("Chrome") &gt; 0 ))&lt;br /&gt;            {&lt;br /&gt;                Request.Browser.Adapters.Clear();&lt;br /&gt;            }&lt;br /&gt;        }&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;Happy hours ! It works for Chrome. Im trying for IE 8. Let me know if some one can give some ideas.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3738979796500504456?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3738979796500504456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3738979796500504456' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3738979796500504456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3738979796500504456'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/06/menu-control-aspnet-20-is-not.html' title='Menu control (Asp.net 2.0) is not displaying properly in Google chrome and IE8 (Beta).'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-538145939651316551</id><published>2009-06-09T23:56:00.000-07:00</published><updated>2009-06-10T00:04:45.157-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='AK Sabin'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Export Excel'/><category scheme='http://www.blogger.com/atom/ns#' term='Split String in Stored Procedure'/><title type='text'>Export Excel Data to SQL Server Database</title><content type='html'>Stored procedure for Exporting data from Excel Sheet to SQL Server Table.&lt;br /&gt;&lt;br /&gt;CREATE TABLE [dbo].[MyAddressTable] (&lt;br /&gt;[FirstName] VARCHAR(20),&lt;br /&gt;[LastName] VARCHAR(20),&lt;br /&gt;[ZIP] VARCHAR(10)&lt;br /&gt;)&lt;br /&gt;GO&lt;br /&gt;&lt;br /&gt;SELECT * FROM [MyTestDB].[dbo].[MyAddressTable]&lt;br /&gt;&lt;br /&gt;INSERT INTO [MyTestDB].[dbo].[MyAddressTable] ( [FirstName], [LastName], [ZIP] )&lt;br /&gt;SELECT [FirstName], [LastName], [ZIP]&lt;br /&gt;FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',&lt;br /&gt;'Excel 8.0;Database=E:\sabin\Try.xls;IMEX=1',&lt;br /&gt;'SELECT * FROM [Sheet1$]')&lt;br /&gt;&lt;br /&gt;It does not need to have excel to be installed in the Server machine where SQL Server is installed. All you need to have is a file of .xls in the server. &lt;br /&gt;&lt;br /&gt;OPENROWSET featire to be enabled through SQL Server Surface Area Configuration.&lt;br /&gt;&lt;strong&gt;Start &gt; SQL Server 2005 &gt; Configuration Tools &gt; Surface Area Configuration&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Click &lt;strong&gt;Surface Area Configuration for Features&lt;/strong&gt;&lt;br /&gt;Click on Database Engine and Check the Enable OPENROWSET and OPENDATA..&lt;br /&gt;&lt;br /&gt;Done !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-538145939651316551?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/538145939651316551/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=538145939651316551' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/538145939651316551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/538145939651316551'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/06/export-excel-data-to-sql-server.html' title='Export Excel Data to SQL Server Database'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7587649241286644433</id><published>2009-05-11T04:44:00.000-07:00</published><updated>2009-05-11T04:46:15.042-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Photoshop'/><category scheme='http://www.blogger.com/atom/ns#' term='Adobe Photoshop'/><category scheme='http://www.blogger.com/atom/ns#' term='Adobe'/><title type='text'>Could not initialize Photoshop because the file is locked. Use the 'Properties' command in the Windows explorer</title><content type='html'>On MS Windows XP Professional (SP1) when a limited user tries to start&lt;br /&gt;Adobe Photoshop CS v.8.0 he gets the following error message:&lt;br /&gt;"Could not initialize Photoshop because the file is locked.&lt;br /&gt;Use the 'Properties' command in the Windows Explorer to unlock the file."&lt;br /&gt;&lt;br /&gt;It seems that the cause of the problem is the location for Photoshop&lt;br /&gt;scratch file (a kind of temporary file. In Photoshop CS you can set the&lt;br /&gt;volumes (i.e. partitions) for scratch files in the following way:&lt;br /&gt;Edit -&gt; Preferences -&gt; Plug-Ins &amp; Scratch Disks&lt;br /&gt;You can define up to four scratch volumes.&lt;br /&gt;&lt;br /&gt;Here is how the problem happened in my case:&lt;br /&gt;The Photoshop CS v.8.0 was installed by an administrator on the system&lt;br /&gt;partition, i.e. on the partition where the Windows folder is located&lt;br /&gt;(also the "Documents and Settings" and "Program Files" folders) -- by&lt;br /&gt;default this is the C: partition.&lt;br /&gt;When the Photoshop was first started by a limited user account (who&lt;br /&gt;was not member of the local administrators group) he got the following&lt;br /&gt;message:&lt;br /&gt;"You currently have Adobe Photoshop's primary Scratch and Windows'&lt;br /&gt;primary paging file on the same volume, which can result in reduced&lt;br /&gt;performance. It is recommended that you set Adobe Photoshop's primary&lt;br /&gt;Scratch volume to be on a different volume, preferably on a different&lt;br /&gt;physical drive."&lt;br /&gt;&lt;br /&gt;Following that recommendation the user set the Photoshop first scratch&lt;br /&gt;volume to D:\ (this was the second hard disk on his PC). But after&lt;br /&gt;closing Photoshop he was unable to start it again because of the&lt;br /&gt;error, "Could not initialize Photoshop because the file is locked ..."&lt;br /&gt;&lt;br /&gt;The problem is that the Photoshop is unable to create the scratch file&lt;br /&gt;on the D: partition as in Windows XP limited users don't have right by&lt;br /&gt;default to create files on the root of a partition (D:\).&lt;br /&gt;&lt;br /&gt;On the other hand if the first scratch volume is set to "Startup",&lt;br /&gt;then Photoshop opens the scratch file on the partition where it was&lt;br /&gt;installed, which is here the system partition. More precisely, in that&lt;br /&gt;case Photoshop opens the scratch file in the temporary folder pointed&lt;br /&gt;by the TEMP and TMP Windows environment variables. By default, these&lt;br /&gt;variables have the value, "%USERPROFILE%\Local Settings\Temp" where&lt;br /&gt;%USERPROFILE% is another Windows environment variable that points to&lt;br /&gt;the user profile folder, e.g. "C:\Documents and %Settings\user_name".&lt;br /&gt;&lt;br /&gt;Conclusion: if you want to have the Photoshop scratch file on a&lt;br /&gt;partition which is not the system partition, you also have to have&lt;br /&gt;right to write files to the root of that partition.&lt;br /&gt;&lt;br /&gt;If you are not allowed to have that right, then as a workaround you&lt;br /&gt;can restore the Photoshop default user preferences by renaming or&lt;br /&gt;deleting the "Adobe Photoshop CS Prefs.psp" file in your user profile&lt;br /&gt;folder -- more precisely in the folder,&lt;br /&gt;%USERPROFILE%\Application Data\Adobe\Photoshop\8.0\Adobe Photoshop CS Settings\&lt;br /&gt;(you can copy the path and open it in the Windows Explorer).&lt;br /&gt;&lt;br /&gt;In my opinion this is a bug in Photoshop. When user changes the&lt;br /&gt;scratch drives, Photoshop should check if it is able to open a file on&lt;br /&gt;the corresponding location before allowing the change. Also, if it is&lt;br /&gt;unable to open the scratch file afterwards, it should try to open the&lt;br /&gt;file at another location.&lt;br /&gt;According to some previous articles in the news groups, this bug also&lt;br /&gt;existed in some previous versions of Photoshop and it is strange that&lt;br /&gt;it hasn't been corrected yet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7587649241286644433?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7587649241286644433/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7587649241286644433' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7587649241286644433'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7587649241286644433'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/05/could-not-initialize-photoshop-because.html' title='Could not initialize Photoshop because the file is locked. Use the &apos;Properties&apos; command in the Windows explorer'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8599900583328452984</id><published>2009-05-05T02:34:00.000-07:00</published><updated>2009-05-05T02:43:16.998-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Manager'/><category scheme='http://www.blogger.com/atom/ns#' term='Ad hoc Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='SSRS'/><title type='text'>The permissions granted to user (IUSR) are insufficient for performing this operation." when trying to view Report Site</title><content type='html'>The permissions granted to user (IUSR) are insufficient for performing this operation." when trying to view Report Site.&lt;br /&gt;&lt;br /&gt;The permissions granted to user are insufficient for performing this operation. (rsAccessDenied)&lt;br /&gt;&lt;br /&gt;Go to My Computer, Right click and get the User Management by clicking Manage. See the Users in the Machine. Right Click on the IUSR_MACHINENAME and view the Properties. Get the “Member Of” tab and add “Administrators” group in the Members List.&lt;br /&gt;&lt;br /&gt;Now browse  http://Server Name or IP/Reports/      (Report Browsers)&lt;br /&gt;http://Server Name or IP/ReportServer      (Report Manager) &lt;br /&gt;&lt;br /&gt;Works fine !&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8599900583328452984?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8599900583328452984/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8599900583328452984' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8599900583328452984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8599900583328452984'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/05/permissions-granted-to-user-iusr-are.html' title='The permissions granted to user (IUSR) are insufficient for performing this operation.&quot; when trying to view Report Site'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8186846804005477060</id><published>2009-05-05T01:49:00.000-07:00</published><updated>2009-05-05T01:51:20.180-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Reporting Services'/><category scheme='http://www.blogger.com/atom/ns#' term='Ad hoc Reports'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='SSRS'/><title type='text'>Microsoft.ReportingServices.RsProxy.AccessDeniedException</title><content type='html'>I Came across this error message (Exception of type 'Microsoft.ReportingServices.RsProxy.AccessDeniedException' was thrown. ) today whilst installing SQL Server 2005 Reporting Services on a windows 2003 server &lt;br /&gt;&lt;br /&gt;thought i'd share the answer for anybody else search as there wasn't much on the Internet for it. &lt;br /&gt;&lt;br /&gt;To fix the issue I followed these steps :- &lt;br /&gt;&lt;br /&gt;Go to Report Manager &lt;br /&gt;Select Site Settings from the top right menu &lt;br /&gt;Select Configure item-level role definitions &lt;br /&gt;Select Content Manager &lt;br /&gt;make sure all the tick boxes are ticked &lt;br /&gt;For myself the Manage / View models tickboxes were not ticked and this fixed the issue&lt;br /&gt;&lt;br /&gt;Hope this helps you out.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8186846804005477060?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8186846804005477060/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8186846804005477060' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8186846804005477060'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8186846804005477060'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/05/microsoftreportingservicesrsproxyaccess.html' title='Microsoft.ReportingServices.RsProxy.AccessDeniedException'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5192456018125611818</id><published>2009-03-31T21:49:00.000-07:00</published><updated>2009-03-31T21:50:48.243-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SPFolder'/><category scheme='http://www.blogger.com/atom/ns#' term='Sharepoint Context Menu'/><category scheme='http://www.blogger.com/atom/ns#' term='Loop through Folders'/><category scheme='http://www.blogger.com/atom/ns#' term='All Folders'/><title type='text'>Iterating through All the Folders in your Sharepoint Site</title><content type='html'>Recently I got a request from a client to get a report of the number of items they had in the document libraries on their site. They wanted it broken down with the number of files per site, document library, and eventually per folder. Anyways its a fairly simple procedure (or so I think anyways), but figured I’d post it up since its been a while since I’ve thrown anything up. The code is broken into two methods, the first is used to iterate through all the child webs of a given SPWeb and also iterates through all the lists for that web and then calls the second method to interate through all the folders in a given list.&lt;br /&gt;&lt;br /&gt;public void CrawlWeb(SPWeb web)&lt;br /&gt;{&lt;br /&gt;     foreach (SPList list in web.Lists)&lt;br /&gt;    {&lt;br /&gt;        CrawlFolder(list.RootFolder);&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    foreach (SPWeb subWeb in web.Webs)&lt;br /&gt;    {&lt;br /&gt;        CrawlWeb(subWeb);&lt;br /&gt;    }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;public void CrawlFolder(SPFolder folder)&lt;br /&gt;{&lt;br /&gt;     if (folder != null &amp;&amp; folder.Name.CompareTo(“forms”) != 0)&lt;br /&gt;    {&lt;br /&gt;        foreach (SPFolder subFolder in folder.SubFolders)&lt;br /&gt;        {&lt;br /&gt;            CrawlFolder(subFolder);&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/2400635795710127553-5192456018125611818?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5192456018125611818/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5192456018125611818' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5192456018125611818'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5192456018125611818'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/03/iterating-through-all-folders-in-your.html' title='Iterating through All the Folders in your Sharepoint Site'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3005472421249830502</id><published>2009-03-17T22:16:00.000-07:00</published><updated>2009-03-17T23:18:06.463-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Sharepoint Context Menu'/><category scheme='http://www.blogger.com/atom/ns#' term='WSS 3.0'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Feature'/><category scheme='http://www.blogger.com/atom/ns#' term='Working Example of Sharepoint Feature'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS Development'/><title type='text'>adding a new menu Item in Sharepoint. (SharePoint Features)</title><content type='html'>WSS 3.0 - How to create new SharePoint Feature?&lt;br /&gt;How to create New Feature in WSS 3.0? / MOSS 2007&lt;br /&gt;&lt;br /&gt;How to add new menu item under “Site Settings” menu in wss 3.0?&lt;br /&gt;&lt;br /&gt;1.       Create a new folder, called “SabinsNewFeature”, in C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURES&lt;br /&gt;&lt;br /&gt;2.       Create an Xml file, called “feature.xml” in the “MyListUserFeature” folder&lt;br /&gt;3.       Edit the feature.xml file and add the following content&lt;br /&gt;&lt;br /&gt;&lt;?xml version="1.0" encoding="utf-8" ?&gt;&lt;br /&gt;&lt;Feature Id="A9CEB138-B991-4013-A1F9-26C6BB646021"&lt;br /&gt;    Title="Feature My List User Feature"&lt;br /&gt;    Description="Custom action on Site Actions"&lt;br /&gt;    Version="1.0.0.0"&lt;br /&gt;    Scope="Site"&lt;br /&gt;    xmlns="http://schemas.microsoft.com/sharepoint/"&gt;&lt;br /&gt;    &lt;ElementManifests&gt;&lt;br /&gt;            &lt;ElementManifest Location="ListUsers.xml" /&gt;&lt;br /&gt;      &lt;/ElementManifests&gt;&lt;br /&gt;&lt;/Feature&gt;&lt;br /&gt;&lt;br /&gt;4.       Replace the GUID placeholder in the previous Id attribute, generate a GUID by running guidgen.exe, located in Local_Drive:\Program Files\Microsoft Visual Studio 8\Common7\Tools.&lt;br /&gt;&lt;br /&gt;Create an Xml file, called “ListUsers.xml” in the “SabinsNewFeature” folder&lt;br /&gt;&lt;br /&gt;5.       Edit the file and add the following content&lt;br /&gt;&lt;?xml version="1.0" encoding="utf-8" ?&gt;&lt;br /&gt;&lt;Elements xmlns="http://schemas.microsoft.com/sharepoint/"&gt;&lt;br /&gt;  &lt;CustomAction&lt;br /&gt;    GroupId = "SiteActions"&lt;br /&gt;    Location="Microsoft.SharePoint.StandardMenu"&lt;br /&gt;    Sequence="1000"&lt;br /&gt;    Title="List Users"&gt;&lt;br /&gt;    &lt;UrlAction Url="/_layouts/Users.aspx"/&gt;&lt;br /&gt;  &lt;/CustomAction&gt;&lt;br /&gt;&lt;/Elements&gt;&lt;br /&gt;6.       Install the new feature by running the following command by going to Start&gt;Run&gt;cmd&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;change to the following directory: %COMMONPROGRAMFILES%\Microsoft shared\Web server extensions\12\Bin.    (Because, STSADM.EXE sits in this folder )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Execute the following command from the above location&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Stsadm –o installfeature –filename SabinsNewFeature\feature.xml&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You will get a message saying "Operation completed Successfully"&lt;br /&gt;&lt;br /&gt;7.       Activate the new feature by running the following command&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;stsadm –o activatefeature -filename SabinsNewFeature\feature.xml -url http://siteurl&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;if your site has been in the port, &lt;br /&gt;stsadm –o activatefeature -filename SabinsNewFeature\feature.xml -url http://siteul:port number&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now you will see the new menu item in the "Site Settings" of the site that you installed the feature.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3005472421249830502?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3005472421249830502/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3005472421249830502' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3005472421249830502'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3005472421249830502'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/03/adding-new-menu-item-in-sharepoint.html' title='adding a new menu Item in Sharepoint. (SharePoint Features)'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3928196203077309701</id><published>2009-03-04T01:05:00.000-08:00</published><updated>2009-03-04T01:08:33.773-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Error 4064'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Default database'/><title type='text'>SQL Server: "Cannot open user default database" Error 4064</title><content type='html'>SQL Server 2005&lt;br /&gt;You can use the sqlcmd utility to change the default database in SQL Server 2005. To do this, follow these steps: &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Click Start, click Run, type cmd, and then press ENTER.&lt;/strong&gt; &lt;br /&gt;&lt;br /&gt;Use one of the following methods, depending on the kind of authentication that the SQL Server login uses: &lt;br /&gt;&lt;br /&gt;If the SQL Server login uses Microsoft Windows authentication to connect to the instance, type the following at the command prompt, and then press ENTER:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;sqlcmd –E -S InstanceName –d master&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;If the SQL Server login uses SQL Server authentication to connect to the instance, type the following at the command prompt, and then press ENTER: &lt;br /&gt;&lt;br /&gt;&lt;strong&gt;sqlcmd -S InstanceName -d master -U SQLLogin -P Password&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Note InstanceName is a placeholder for the name of the SQL Server 2005 instance to which you are connecting. SQLLogin is a placeholder for the SQL Server login whose default database has been dropped. Password is a placeholder for the SQL Server login password.&lt;br /&gt;At the sqlcmd prompt, type the following, and then press ENTER:&lt;br /&gt; &lt;br /&gt;&lt;strong&gt;ALTER LOGIN SQLLogin WITH DEFAULT_DATABASE = AvailDBName&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Note AvailDBName is a placeholder for the name of the existing database that can be accessed by the SQL Server login in the instance.&lt;br /&gt;At the sqlcmd prompt, type GO, and then press ENTER.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3928196203077309701?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3928196203077309701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3928196203077309701' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3928196203077309701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3928196203077309701'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/03/sql-server-cannot-open-user-default.html' title='SQL Server: &quot;Cannot open user default database&quot; Error 4064'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4532614788920002757</id><published>2009-03-03T20:53:00.000-08:00</published><updated>2009-03-04T01:04:48.050-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Remote Connection'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005 Remote Access'/><category scheme='http://www.blogger.com/atom/ns#' term='SQL Server 2005'/><category scheme='http://www.blogger.com/atom/ns#' term='Surface Area Configuration'/><title type='text'>Enable remote connections to the SQL Server 2005 instance that hosts the report server database</title><content type='html'>Click Start, point to Programs, point to Microsoft SQL Server 2005, &lt;br /&gt;oint to Configuration Tools, and click SQL Server Surface Area Configuration Tool.&lt;br /&gt; &lt;br /&gt;Click Surface Area Configuration for Services and Connections.&lt;br /&gt; &lt;br /&gt;Open the folder for the SQL Server instance that hosts the report server databases. &lt;br /&gt;&lt;br /&gt;Click 'Remote Connections' under 'Database Engine'&lt;br /&gt; &lt;br /&gt;Click Local and Remote Connections.&lt;br /&gt; &lt;br /&gt;Click Using both TCP/IP and named pipes.&lt;br /&gt; &lt;br /&gt;Click OK, and then restart the service by selecting "service" and clicking the "Stop" button at the right pane.&lt;br /&gt;&lt;br /&gt;click "Start" button after stoping it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4532614788920002757?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4532614788920002757/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4532614788920002757' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4532614788920002757'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4532614788920002757'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/03/enable-remote-connections-to-sql-server.html' title='Enable remote connections to the SQL Server 2005 instance that hosts the report server database'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1359900306550609846</id><published>2009-01-19T23:26:00.000-08:00</published><updated>2009-11-10T04:17:44.572-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Navigation'/><category scheme='http://www.blogger.com/atom/ns#' term='Link'/><category scheme='http://www.blogger.com/atom/ns#' term='RDLC'/><category scheme='http://www.blogger.com/atom/ns#' term='Hyperlinks'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Viewer'/><title type='text'>Adding dynamic hyperlinks in the Report Viewer; ASP.Net Reports</title><content type='html'>Adding dynamic hyperlinks in the Report Viewer; ASP.Net Reports&lt;br /&gt;&lt;br /&gt;Type the text to be displayed as the Hyperlink in the cell of your Table control added in the RDLC file. Right click on the Hyperlink text cell and click 'Navigation' tab.&lt;br /&gt;&lt;br /&gt;Click Jump to URL radio button and add expression by clicking 'fx' button.&lt;br /&gt;&lt;br /&gt;=iif(1&lt;&gt;0, Parameters!MyLink.Value+"?qBTchId=" &amp;amp; Fields!BatchID.Value, "")&lt;br /&gt;Report Parameters can be sent from the code behind file as&lt;br /&gt;&lt;br /&gt;Microsoft.Reporting.WebForms.ReportParameter RptLink1 = new Microsoft.Reporting.WebForms.ReportParameter("AssignLink", UriBuilder.BuildUrlNew(@"../Training/FrmAssignTraining.aspx"));&lt;br /&gt;       Microsoft.Reporting.WebForms.ReportParameter RptLink2 = new Microsoft.Reporting.WebForms.ReportParameter("UpdateLink", UriBuilder.BuildUrlNew(@"../Training/FrmTrainingUpdate.aspx"));&lt;br /&gt;       Microsoft.Reporting.WebForms.ReportParameter RptLink3 = new Microsoft.Reporting.WebForms.ReportParameter("PrintLink", UriBuilder.BuildUrlNew(@"../Training/FrmTrainingPrint.aspx"));&lt;br /&gt;&lt;br /&gt;       RptTraining.LocalReport.SetParameters(new Microsoft.Reporting.WebForms.ReportParameter[] { RptLink1, RptLink2, RptLink3 });&lt;br /&gt;&lt;br /&gt;RptTraining.LocalReport.EnableHyperlinks = true;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;=iif(1&lt;&gt;0,Fields!Status.Value, "")&lt;br /&gt;&lt;div&gt;******************/&lt;/div&gt;&lt;div&gt;using System;&lt;/div&gt;&lt;div&gt;using System.Data;&lt;/div&gt;&lt;div&gt;using System.Configuration;&lt;/div&gt;&lt;div&gt;using System.Web;&lt;/div&gt;&lt;div&gt;using System.Web.Security;&lt;/div&gt;&lt;div&gt;using System.Web.UI;&lt;/div&gt;&lt;div&gt;using System.Web.UI.WebControls;&lt;/div&gt;&lt;div&gt;using System.Web.UI.WebControls.WebParts;&lt;/div&gt;&lt;div&gt;using System.Web.UI.HtmlControls;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;/// &lt;summary&gt;&lt;/div&gt;&lt;div&gt;/// The common class for building the URL for the report. Eg: UriBuilder.BuilUri("FrmAdvance.aspx");&lt;/div&gt;&lt;div&gt;/// &lt;/summary&gt;&lt;/div&gt;&lt;div&gt;public class UriBuilder&lt;/div&gt;&lt;div&gt;{&lt;/div&gt;&lt;div&gt;    public UriBuilder()&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        //&lt;/div&gt;&lt;div&gt;        // TODO: Add constructor logic here&lt;/div&gt;&lt;div&gt;        //&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;    /// &lt;summary&gt;&lt;/div&gt;&lt;div&gt;    /// This method Builds the physical Url with the page name provided&lt;/div&gt;&lt;div&gt;    /// &lt;/summary&gt;&lt;/div&gt;&lt;div&gt;    /// &lt;param name="pageName"&gt;The name of the page&lt;/param&gt;&lt;/div&gt;&lt;div&gt;    /// &lt;returns&gt; The URL string &lt;/returns&gt;&lt;/div&gt;&lt;div&gt;    public static string BuildUrl(string pageName)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        Uri uri = new Uri(HttpContext.Current.Request.Url.AbsoluteUri);&lt;/div&gt;&lt;div&gt;        Uri newUri = new Uri(uri, pageName);&lt;/div&gt;&lt;div&gt;        return newUri.AbsoluteUri;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;    public static string BuildUrlNew(string pageName)&lt;/div&gt;&lt;div&gt;    {&lt;/div&gt;&lt;div&gt;        Uri uri = new Uri(HttpContext.Current.Request.Url.AbsoluteUri.Replace("/FeedBackQuality", ""));&lt;/div&gt;&lt;div&gt;        Uri uri2 = new Uri(&lt;/div&gt;&lt;div&gt;        Uri newUri = new Uri(uri, pageName);&lt;/div&gt;&lt;div&gt;        return newUri.AbsoluteUri;&lt;/div&gt;&lt;div&gt;    }&lt;/div&gt;&lt;div&gt;}&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_4m9ZcVzpFsc/SXV-Avcq45I/AAAAAAAAC6c/BozQ3ahbbX0/s1600-h/Hyperlink.JPG"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://4.bp.blogspot.com/_4m9ZcVzpFsc/SXV-Avcq45I/AAAAAAAAC6c/BozQ3ahbbX0/s400/Hyperlink.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5293275488245703570" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1359900306550609846?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1359900306550609846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1359900306550609846' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1359900306550609846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1359900306550609846'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/01/adding-dynamic-hyperlinks-in-report.html' title='Adding dynamic hyperlinks in the Report Viewer; ASP.Net Reports'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SXV-Avcq45I/AAAAAAAAC6c/BozQ3ahbbX0/s72-c/Hyperlink.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1839519233530712867</id><published>2009-01-19T23:13:00.000-08:00</published><updated>2009-01-19T23:26:24.346-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Background Color for Cell'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Control'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='Report Viewer'/><title type='text'>Report viewer; changing the cell background color dynamically</title><content type='html'>Report viewer; how to change the cell background color dynamically?&lt;br /&gt;&lt;br /&gt;Select the cell which has to be colored, and press 'f4' key to get the 'properties' window of Visual Studio IDE. Go to 'BackgroundColor' property and click the '&lt;expression..&gt;' under the dropdown list. &lt;br /&gt;&lt;br /&gt;Just give a condition for your entity property.&lt;br /&gt;=iif(Fields!TotalPrice.Value = "2500", "DarkGray", "")&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1839519233530712867?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1839519233530712867/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1839519233530712867' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1839519233530712867'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1839519233530712867'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2009/01/report-viewer-changing-cell-background.html' title='Report viewer; changing the cell background color dynamically'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4945411365381897612</id><published>2008-12-03T06:55:00.001-08:00</published><updated>2008-12-03T06:56:27.317-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='RDLC'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Invoking "Save as PDF" method of Report Viewer</title><content type='html'>UserEntryFormEntity oEnt= new UserEntryFormEntity();&lt;br /&gt;        List&lt;UserEntryFormEntity&gt; oEntity = new List&lt;UserEntryFormEntity&gt;();&lt;br /&gt;        &lt;br /&gt;        oEnt = GetReportData(JoinersId); // Method Which returns a List of Data&lt;br /&gt;        oEntity.Add(oEnt);&lt;br /&gt;&lt;br /&gt;        Microsoft.Reporting.WebForms.LocalReport localReport = new Microsoft.Reporting.WebForms.LocalReport();&lt;br /&gt;        localReport.ReportPath = Server.MapPath("~/DocumentTemplates/UserEntryForm.rdlc");&lt;br /&gt;&lt;br /&gt;        Microsoft.Reporting.WebForms.ReportDataSource oDataSource = new Microsoft.Reporting.WebForms.ReportDataSource("UserEntryFormEntity", oEntity);&lt;br /&gt;        localReport.DataSources.Add(oDataSource);&lt;br /&gt;        string reportType = "PDF";&lt;br /&gt;        string mimeType;&lt;br /&gt;        string encoding;&lt;br /&gt;        string fileNameExtension;&lt;br /&gt;        string deviceInfo = "&lt;DeviceInfo&gt;" + "  &lt;OutputFormat&gt;PDF&lt;/OutputFormat&gt;" + "  &lt;PageWidth&gt;8.5in&lt;/PageWidth&gt;" + "  &lt;PageHeight&gt;11in&lt;/PageHeight&gt;" + "  &lt;MarginTop&gt;0.5in&lt;/MarginTop&gt;" + "  &lt;MarginLeft&gt;1in&lt;/MarginLeft&gt;" + "  &lt;MarginRight&gt;1in&lt;/MarginRight&gt;" + "  &lt;MarginBottom&gt;0.5in&lt;/MarginBottom&gt;" + "&lt;/DeviceInfo&gt;";&lt;br /&gt;        Microsoft.Reporting.WebForms.Warning[] warnings;&lt;br /&gt;        //Warning[] warnings;&lt;br /&gt;        string[] streams;&lt;br /&gt;        byte[] renderedBytes;&lt;br /&gt;        renderedBytes = localReport.Render(reportType, deviceInfo, out mimeType, out encoding, out fileNameExtension, out streams, out warnings);&lt;br /&gt;        //Clear the response stream and write the bytes to the outputstream&lt;br /&gt;        //Set content-disposition to "attachment" so that user is prompted to take an action&lt;br /&gt;        //on the file (open or save)&lt;br /&gt;        Response.Clear();&lt;br /&gt;        Response.ContentType = mimeType;&lt;br /&gt;        Response.AddHeader("content-disposition", "attachment; filename=foo." + fileNameExtension);&lt;br /&gt;        Response.BinaryWrite(renderedBytes);&lt;br /&gt;        Response.End();&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4945411365381897612?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4945411365381897612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4945411365381897612' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4945411365381897612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4945411365381897612'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/12/invoking-save-as-pdf-method-of-report.html' title='Invoking &quot;Save as PDF&quot; method of Report Viewer'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3707166667103800788</id><published>2008-10-31T02:53:00.000-07:00</published><updated>2008-10-31T02:55:59.537-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server'/><category scheme='http://www.blogger.com/atom/ns#' term='WSS'/><category scheme='http://www.blogger.com/atom/ns#' term='Web Part'/><category scheme='http://www.blogger.com/atom/ns#' term='MOSS Development'/><title type='text'>Best Practices for Writing HTML in Web Parts?</title><content type='html'>Something that's as puzzling as the Cadbury secret (and we all know that us programmers figured that out long ago) is just what's the best way to write out HTML in Web Parts? So call me masochistic but I write Web Parts with code. Yes, it's ugly. Yes, it's painful. Yes, you could use something cool like SmartPart or load the controls yourself (but that brings on a host of other issues like Code Access Security so we won't go into that). &lt;br /&gt;&lt;br /&gt;For those of us that hold true to the "old fashioned" way, what's the best way to write all that code out? Consider these two approaches that writes out a label and control in a row for a form:&lt;br /&gt;&lt;br /&gt;private void RenderRow(HtmlTextWriter output, Label label, WebControl control)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;       output.Write("&lt;tr&gt;&lt;td class=\"ms-formlabel\" valign=\"top\" nowrap=\"true\"&gt;");&lt;br /&gt;&lt;br /&gt;       label.RenderControl(output);&lt;br /&gt;&lt;br /&gt;       output.Write("&lt;/td&gt;&lt;td class=\"ms-formbody\"&gt;");&lt;br /&gt;&lt;br /&gt;       control.RenderControl(output);&lt;br /&gt;&lt;br /&gt;       output.Write("&lt;/td&gt;&lt;/tr&gt;");&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;private void RenderRow(HtmlTextWriter output, Label label, WebControl control)&lt;br /&gt;&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;       output.RenderBeginTag("tr");&lt;br /&gt;&lt;br /&gt;       output.RenderBeginTag("td");&lt;br /&gt;&lt;br /&gt;       output.AddAttribute("class", "ms-formlabel");&lt;br /&gt;&lt;br /&gt;       output.AddAttribute("valign", "top");&lt;br /&gt;&lt;br /&gt;       output.AddAttribute("nowrap", "true");&lt;br /&gt;&lt;br /&gt;       label.RenderControl(output);&lt;br /&gt;&lt;br /&gt;       output.RenderEndTag();&lt;br /&gt;&lt;br /&gt;       output.RenderBeginTag("td");&lt;br /&gt;&lt;br /&gt;       output.AddAttribute("class", "ms-formbody");&lt;br /&gt;&lt;br /&gt;       control.RenderControl(output);&lt;br /&gt;&lt;br /&gt;       output.RenderEndTag();&lt;br /&gt;&lt;br /&gt;       output.RenderEndTag();&lt;br /&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Both output exactly the same HTML. Does it matter? The first approach is less lines but is it any more (or less) readable? Or maybe everything should be built up in a StringBuilder class and slammed out to the HtmlTextWriter? Or is it simply whatever is readable or maintainable works? Looking for your thoughts, ideas, suggestions, rants, assorted concealed lizards of any kind.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3707166667103800788?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3707166667103800788/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3707166667103800788' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3707166667103800788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3707166667103800788'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/10/best-practices-for-writing-html-in-web.html' title='Best Practices for Writing HTML in Web Parts?'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3509029811283831057</id><published>2008-10-10T02:23:00.001-07:00</published><updated>2008-10-21T01:53:09.928-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Report Control'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net Reports'/><title type='text'>Giving Background Dynamically for Cells in ASP.Net Report Control</title><content type='html'>Right Click in the cell and click Properties. Click on the Background color in the Property box and click expression in the dropdown box for selecting the background color.&lt;br /&gt;&lt;br /&gt;=iif(Parameters!oTotal.Value = Fields!RowCount.Value ,"YellowGreen","White")&lt;br /&gt;&lt;br /&gt;If Row Count and Total are equal, Background color would be YellowGreen, else White.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3509029811283831057?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3509029811283831057/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3509029811283831057' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3509029811283831057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3509029811283831057'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/10/giving-background-dynamically-for-cells.html' title='Giving Background Dynamically for Cells in ASP.Net Report Control'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5098653127663049890</id><published>2008-10-10T02:15:00.000-07:00</published><updated>2008-10-10T02:30:52.390-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Report Viewer'/><category scheme='http://www.blogger.com/atom/ns#' term='.Net Reports'/><title type='text'>Giving Visibility True / False for a Report Control Row or Column</title><content type='html'>Right click in the field(cell) and click expression and add Expression as&lt;br /&gt;=iif(Parameters!oTotal.Value = Fields!RowCount.Value ,False,True)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Right click in the cell again and click Properties&lt;br /&gt;Click visibility tab and add expression as &lt;br /&gt;=iif(Max(Fields!RowCount.Value)=5,Fields!ActualSales.Value+Fields!TOTALSales.Value,0)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5098653127663049890?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5098653127663049890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5098653127663049890' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5098653127663049890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5098653127663049890'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/10/giving-visibility-true-false-for-report.html' title='Giving Visibility True / False for a Report Control Row or Column'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2629830296511905988</id><published>2008-10-10T00:15:00.000-07:00</published><updated>2008-10-10T00:21:44.780-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WSS 2.0'/><category scheme='http://www.blogger.com/atom/ns#' term='Cross Domains'/><category scheme='http://www.blogger.com/atom/ns#' term='SharePoint Server 2003'/><category scheme='http://www.blogger.com/atom/ns#' term='Cross Foresr'/><title type='text'>Cross-forest deployments of SharePoint Portal SPS 2003</title><content type='html'>SharePoint Portal Server 2003 Cross forest deployment scenarios&lt;br /&gt;&lt;br /&gt;One of the deployment scenarios that we were pretty naive about in SPS 2003 was the deployment of SPS in the enterprise with multiple forests. Part of why that happened was because we miscalculated how we thought AD deployments would happen.&lt;br /&gt;&lt;br /&gt;At the beginning of the O11 planning cycle (spring 2001), we asked the AD guys about what we should support and we got a clear message that we should be targeting single forests (not because multiple forests didn't exist, but because the AD team was encouraging folks to move to a single forest). Near the end of the release cycle of O11 (summer 2003), it was pretty clear multiple forests were going to be with us for a long time. That left us with very little time to address this deployment scenario.&lt;br /&gt;&lt;br /&gt;You can see this naivete in two different places:&lt;br /&gt;&lt;br /&gt;People picker&lt;br /&gt;            Can only pick from one forest, the one in which the Sharepoint Server is deployed on&lt;br /&gt;&lt;br /&gt;Profiles and MySites&lt;br /&gt;            Create a MySite and Profile page for each account even though they are for the same person&lt;br /&gt;            Org. Charts on the profile page contain incomplete or duplicate entries&lt;br /&gt;            Audience targeting works inconsistently for folks who have multiple login accounts   &lt;br /&gt;&lt;br /&gt;So what are we going to do about it?&lt;br /&gt;&lt;br /&gt;First we reduced the many multi-forest topologies to two basic types:&lt;br /&gt;&lt;br /&gt;1. Resource Forest&lt;br /&gt;            This happens when the Sharepoint deployment is done in a separate forest from the login accounts. This deployment is often driven by the way Exchange and LCS are deployed in the corporation. The Sharepoint/Exchange/LCS forest has shadown, non-login accounts that contain the metadata about the user, but the user actually logs in to a separate forest. The resource forest trusts the login forest, but not the other way around.&lt;br /&gt;&lt;br /&gt;2. Multi-login Forests&lt;br /&gt;            This happens when there are one or more forests that trust each other, but a single person has accounts in more than one forest. This could happen in many ways, an instructive example is in an merger or acquisition. Both companies had their own forest and after the merger/acquisition, the forests were made to trust each together. Lots of apps depend on the forest structure, so for some people accounts are given in both forests to access the apps.&lt;br /&gt;&lt;br /&gt;Note: The right domain should be called Domain2&lt;br /&gt;&lt;br /&gt;Now, let's a take look at the two problem areas: &lt;br /&gt;&lt;br /&gt;People Picker&lt;br /&gt;Note: This feature is present in Beta2&lt;br /&gt;&lt;br /&gt;For the people picker, WSS now allows you to pick people from multiple forests (even across the wrong way of a 1-way trust). The way they do this is by registering your forest and the credentials required to access it for a given Web App via the stsadm tool. &lt;br /&gt;&lt;br /&gt; &gt; stsadm.exe -o setproperty -url http://server:port -pn "peoplepicker-searchadforests" -pv "forest:foo.corp.com;domain:bar.foo.corp.com", LoginName, P@ssword&lt;br /&gt;&lt;br /&gt;The people picker code will basically iterate through each and every forest (or auth provider) until is resolves a given username. This allows for a simple model to pick people across both the resource forest and multi-login forest topologies.&lt;br /&gt;&lt;br /&gt;People and Personalization features&lt;br /&gt;Note: This feature MAY not be in Beta2&lt;br /&gt;&lt;br /&gt;Office Server has a number of resources/objects that are identified with a person -- his profile, colleagues, org. hierarchy, mysite, audiences, etc. Multiple forests generate more than one identifier for the same person - different login name, different SID.  &lt;br /&gt;&lt;br /&gt;So, the problem is how to reconcile the two accounts to one consistent user experience.&lt;br /&gt;&lt;br /&gt;In the resource forest case:&lt;br /&gt;&lt;br /&gt;When we import a User object from the Resource forest, we create a profile that is ID'd by resource\user1. However, we need to identify it by the real login account of the user, corp\user1, so that you can find the profile when the user logs into Sharepoint as corp\user1. If we didn't do the reconciliation, the profile would be identified by "resource\user1" and the user would be logged in as "corp\user1" and never the two shall meet.&lt;br /&gt;&lt;br /&gt;In order to do this, we follow the DN to the master account by looking at the ms-ds-Source-Object-DN** attribute in the User object. When you setup the Directory Connection in Office Server, you will be asked for the login and password for the account that has access to the login forest. &lt;br /&gt;&lt;br /&gt;In the Multi-login forest case:&lt;br /&gt;&lt;br /&gt;For users who have a login account in each of the forests, we need to correctly map one login user to the other. This is easily done with the msdsSourceObjectDN attribute I mentioned earlier. However, we need to verify the user experience for each account and see whether the "right" thing has happened.&lt;br /&gt;&lt;br /&gt;A couple of definitions for the examples to make sense:&lt;br /&gt;1. There are two accounts domain1\user and domain2\user&lt;br /&gt;2. They are in different forests that trust each other&lt;br /&gt;3. Domain1\user is the "master" account of Domain2\user (relationship encoded in AD attribute, populated via MIIS)&lt;br /&gt;&lt;br /&gt;Existing features and their expected behaviour:&lt;br /&gt;&lt;br /&gt;1. Profile page and object model&lt;br /&gt;            Maintain the list of alternate accounts by which the profile is identified. When you try to find the profile of the user using either account, return the same profile (the one of the master account).&lt;br /&gt;&lt;br /&gt;2. MySite&lt;br /&gt;            Regardless of which account you are logged-in as, creating a MySite will create one using the master account (http://server/personal/user or http://server/personal/domain1_user), but will add the alternate login account(s) as administrators to the site.&lt;br /&gt;&lt;br /&gt;3. People Search&lt;br /&gt;            Search for people of either accountname (domain1\user or domain2\user) will return the same result, of domain1\user&lt;br /&gt;&lt;br /&gt; 4. Audiences&lt;br /&gt;            Audiences will only contain master accounts. So, during compilation, any rule that contained a slave account will get internally treated like it's master account. For example, All people reporting under "domain2\user" will get treated like "domain1\user". Since we reconcile all accounts, the management hierarchy will be exactly the same for both accounts.&lt;br /&gt;&lt;br /&gt;5. Import from Business Data Catalog&lt;br /&gt;            Since we are depending on the fact that there is a master account, we will only import data into the profile store that can be identified by the master account. For example, imagine there is an HR people table or webservice. When we try to import the employee id via the BDC, the record for that employee needs to be identified by "domain1\user" not by "domain2\user".  &lt;br /&gt;&lt;br /&gt;6a. WSS Sync - Memberships&lt;br /&gt;            We would have to treat sites in which domain1\user is a member of as well as sites in which domain2\user is a member of as though they belong to the same user, of domain1\user. That will generate the right list of sites. That's not enough.&lt;br /&gt;&lt;br /&gt;In order to get the right roll-up of documents and tasks, we would need to issue a query that is something is the equivalent of "SELECT docs FROM member site WHERE author = domain1\user OR author = domain2\user"&lt;br /&gt;&lt;br /&gt;6b. WSS Sync - Profile properties&lt;br /&gt;            We will need to update the user table rows in the WSS site collection for both domain1\user and domain2\user. This will have the desired effect where the user goes to his MySite and uploads his picture. This info will then be sync'd to every WSS site regardless of whether the user logins in as domain1\user or domain2\user.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2629830296511905988?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2629830296511905988/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2629830296511905988' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2629830296511905988'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2629830296511905988'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/10/cross-forest-deployments-of-sharepoint.html' title='Cross-forest deployments of SharePoint Portal SPS 2003'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4627810465067004315</id><published>2008-07-31T02:26:00.000-07:00</published><updated>2008-07-31T02:28:02.314-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Classic ASP'/><category scheme='http://www.blogger.com/atom/ns#' term='SMTP Mail'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP 3.0'/><category scheme='http://www.blogger.com/atom/ns#' term='CDO.Message'/><title type='text'>Send mails from a Remote host in Classic ASP</title><content type='html'>&lt;strong&gt;Situation:&lt;/strong&gt; Your IIS is sitting in a machine A and Webmail is in a remote place say Machine B. To do send the mail from Classic ASP files inside the IIS, go with the below given method. Remember, the From Email id has to be a valid id and it's User Name and Password should be mentioned it the below given code.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory. &lt;br /&gt;Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network). &lt;br /&gt;&lt;br /&gt;Const cdoAnonymous = 0 'Do not authenticate&lt;br /&gt;Const cdoBasic = 1 'basic (clear-text) authentication&lt;br /&gt;Const cdoNTLM = 2 'NTLM&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Function SendMailNow(sFromEmail, sToEmail,sCcEmail, sSubject, sText)&lt;br /&gt;&lt;br /&gt;Set myMail=CreateObject("CDO.Message")&lt;br /&gt;  myMail.Subject = sSubject&lt;br /&gt;  myMail.From = sFromEmail&lt;br /&gt;  myMail.To = sToEmail&lt;br /&gt;  myMail.cc = sCcEmail&lt;br /&gt;  myMail.HTMLBody = sText&lt;br /&gt;  myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 &lt;br /&gt;&lt;br /&gt;'Name or IP of Remote SMTP Server&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "202.151.190.XX"&lt;br /&gt;&lt;br /&gt;'Type of authentication, NONE, Basic (Base64 encoded), NTLM&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic&lt;br /&gt;&lt;br /&gt;'Your UserID on the SMTP server ONLY A VALID USER NAME, IT SHOULD EXIST&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username" &lt;br /&gt;&lt;br /&gt;'Your password on the SMTP server  PASSWORD OF AN EXISTING USER NAME IN THAT REMORT MACHINE&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"&lt;br /&gt;&lt;br /&gt;'Server port (typically 25)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 &lt;br /&gt;&lt;br /&gt;'Use SSL for the connection (False or True)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False&lt;br /&gt;&lt;br /&gt;'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60&lt;br /&gt;&lt;br /&gt;myMail.Configuration.Fields.Update&lt;br /&gt;&lt;br /&gt;myMail.Send&lt;br /&gt;&lt;br /&gt;Response.Write("Mail Sent")&lt;br /&gt;Response.End&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;End Function&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4627810465067004315?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4627810465067004315/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4627810465067004315' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4627810465067004315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4627810465067004315'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/07/send-mails-from-remote-host-in-classic.html' title='Send mails from a Remote host in Classic ASP'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8539478104019793383</id><published>2008-07-31T02:12:00.000-07:00</published><updated>2008-07-31T02:25:06.776-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Classic ASP'/><category scheme='http://www.blogger.com/atom/ns#' term='SMTP Mail Sending Remote Host'/><category scheme='http://www.blogger.com/atom/ns#' term='CDO.Message'/><category scheme='http://www.blogger.com/atom/ns#' term='Send Mail'/><title type='text'>Send Mail from a Remote Host in Classic ASP</title><content type='html'>Situation: Your IIS is sitting in a machine A and Webmail is in a remote place say Machine B. To do send the mail from Classic ASP files inside the IIS, go with the below given method. Remember, the From Email id has to be a valid id and it's User Name and Password should be mentioned it the below given code.&lt;br /&gt;&lt;br /&gt;&lt;!-- &lt;strong&gt;This program has function to send mail from aremote host &lt;/strong&gt;--&gt;&lt;br /&gt;&lt;br /&gt;&lt;%&lt;br /&gt;Const cdoSendUsingPickup = 1 'Send message using the local SMTP service pickup directory. &lt;br /&gt;Const cdoSendUsingPort = 2 'Send the message using the network (SMTP over the network). &lt;br /&gt;&lt;br /&gt;Const cdoAnonymous = 0 'Do not authenticate&lt;br /&gt;Const cdoBasic = 1 'basic (clear-text) authentication&lt;br /&gt;Const cdoNTLM = 2 'NTLM&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Function SendMailNow(sFromEmail, sToEmail,sCcEmail, sSubject, sText)&lt;br /&gt;&lt;br /&gt;Set myMail=CreateObject("CDO.Message")&lt;br /&gt;  myMail.Subject = sSubject&lt;br /&gt;  myMail.From = sFromEmail&lt;br /&gt;  myMail.To = sToEmail&lt;br /&gt;  myMail.cc = sCcEmail&lt;br /&gt;  myMail.HTMLBody = sText&lt;br /&gt;  myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2 &lt;br /&gt;&lt;br /&gt;'Name or IP of Remote SMTP Server&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "202.151.190.XX"&lt;br /&gt;&lt;br /&gt;'Type of authentication, NONE, Basic (Base64 encoded), NTLM&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = cdoBasic&lt;br /&gt;&lt;br /&gt;'Your UserID on the SMTP server ONLY A VALID USER NAME, IT SHOULD EXIST&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendusername") = "username" &lt;br /&gt;&lt;br /&gt;'Your password on the SMTP server  PASSWORD OF AN EXISTING USER NAME IN THAT REMORT MACHINE&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"&lt;br /&gt;&lt;br /&gt;'Server port (typically 25)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25 &lt;br /&gt;&lt;br /&gt;'Use SSL for the connection (False or True)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = False&lt;br /&gt;&lt;br /&gt;'Connection Timeout in seconds (the maximum time CDO will try to establish a connection to the SMTP server)&lt;br /&gt;myMail.Configuration.Fields.Item _&lt;br /&gt;("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 60&lt;br /&gt;&lt;br /&gt;myMail.Configuration.Fields.Update&lt;br /&gt;&lt;br /&gt;myMail.Send&lt;br /&gt;&lt;br /&gt;Response.Write("Mail Sent")&lt;br /&gt;Response.End&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;End Function&lt;br /&gt;&lt;br /&gt;%&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8539478104019793383?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8539478104019793383/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8539478104019793383' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8539478104019793383'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8539478104019793383'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/07/send-mail-from-remote-host-in-classic.html' title='Send Mail from a Remote Host in Classic ASP'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3355223950612318379</id><published>2008-07-04T07:34:00.000-07:00</published><updated>2008-07-04T07:36:43.511-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='DropDown List'/><category scheme='http://www.blogger.com/atom/ns#' term='Dropdown'/><category scheme='http://www.blogger.com/atom/ns#' term='Web.config'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Binding DropDown List from Web.Config</title><content type='html'>Add the keys in the Web.Config under App Settings as given below.&lt;br /&gt;&lt;br /&gt;&lt;appsettings&gt;&lt;br /&gt;&lt;add key="ColorText" value="Red;Orange;Green;Brown;Lavender;Blue"&gt;&lt;br /&gt;&lt;add key="ColorValue" value="1;2;3;4;5;6"&gt;&lt;br /&gt;&lt;/appsettings&gt;&lt;br /&gt;&lt;br /&gt;Call up the Method BindColors() from Page Load by passing the DropDown Object&lt;br /&gt;&lt;br /&gt;using System.Configuration;  // This name space to be added in the page.&lt;br /&gt;// If this is not available, Add Reference to the System.Configuration dll// from the .Net Tab by right clicking on the website and adding.&lt;br /&gt;BindColors(DrpColor);&lt;br /&gt;&lt;br /&gt;private void BindColors(DropDownList oDrp)&lt;br /&gt;    {&lt;br /&gt;        String ColorTexts = ConfigurationManager.AppSettings["ColorText"];&lt;br /&gt;        String ColorValues = ConfigurationManager.AppSettings["ColorValue"];&lt;br /&gt;&lt;br /&gt;        string[] ColorText = ColorTexts.Split(';');&lt;br /&gt;        string[] ColorValue = ColorValues.Split(';');&lt;br /&gt;&lt;br /&gt;        ListItemCollection oCollection = new ListItemCollection();&lt;br /&gt;&lt;br /&gt;        for (int i = 0; i &lt; ColorText.Length; i++)&lt;br /&gt;        {&lt;br /&gt;            ListItem oItem = new ListItem();&lt;br /&gt;            oItem.Value = ColorValue[i].ToString();&lt;br /&gt;            oItem.Text = ColorText[i];&lt;br /&gt;            oCollection.Add(oItem);&lt;br /&gt;        }&lt;br /&gt;&lt;br /&gt;        oDrp.DataTextField = "Text";&lt;br /&gt;        oDrp.DataValueField = "Value";&lt;br /&gt;        oDrp.DataSource = oCollection;&lt;br /&gt;        oDrp.DataBind();&lt;br /&gt;}&lt;br /&gt; Dropdown’s Text and Values are bound.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3355223950612318379?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3355223950612318379/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3355223950612318379' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3355223950612318379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3355223950612318379'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/07/binding-dropdown-list-from-webconfig.html' title='Binding DropDown List from Web.Config'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-1083792120232732440</id><published>2008-06-25T04:24:00.000-07:00</published><updated>2008-06-25T04:26:20.074-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Web.config'/><title type='text'>requirePermission="false" in the Web.config shows error</title><content type='html'>requirePermission="false" in the Web.config shows error?&lt;br /&gt;Solution: Add xmlns property for the configuration tabxmlns="&lt;a href="http://schemas.microsoft.com/.NetConfiguration/v2.0"&gt;http://schemas.microsoft.com/.NetConfiguration/v2.0&lt;/a&gt;"&lt;br /&gt;ie,&lt;br /&gt;&lt;configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-1083792120232732440?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/1083792120232732440/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=1083792120232732440' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1083792120232732440'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/1083792120232732440'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/06/requirepermissionfalse-in-webconfig.html' title='requirePermission=&quot;false&quot; in the Web.config shows error'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8410814501937801517</id><published>2008-06-20T03:22:00.000-07:00</published><updated>2008-06-20T04:04:58.535-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Report Control'/><category scheme='http://www.blogger.com/atom/ns#' term='RDLC'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>ASP.Net Report Control.</title><content type='html'>Writting conditions in the columns; Report Control, ASP.Net.&lt;br /&gt;&lt;br /&gt;=IIf(IsNothing(Fields!Value.Value),"NA",Fields!Value.Value)This one check if the value is Null or not.If Value is Null, it displays NA&lt;br /&gt;Else it displays the Value from the Business Entity.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8410814501937801517?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8410814501937801517/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8410814501937801517' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8410814501937801517'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8410814501937801517'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/06/aspnet-report-control.html' title='ASP.Net Report Control.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5892898493355582856</id><published>2008-06-19T23:44:00.000-07:00</published><updated>2008-06-20T00:12:03.971-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Split String in Stored Procedure'/><title type='text'>Split Text In Stored Procedure and Insert in to the Table</title><content type='html'>User Selects the Select All check box and clicks Submit. All the IDs of selected check boxes are concatenated and send to the Stored Procedures.Stored Procedure accepts Two Patameters UserName and IdStringId String is in the format ~71~5~88~1043~9.&lt;br /&gt;The special character '~' is used to concatenate the Ids.&lt;br /&gt;Stored procedure splits the IdString and get each seperate id and update the database with the UserNameThe Table(CH_APPLIED_INFO) will be updated as&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;UserName   JobID&lt;/strong&gt;&lt;br /&gt;   Sabin             71&lt;br /&gt;   Sabin              5&lt;br /&gt;   Sabin             88&lt;br /&gt;   Sabin          1043&lt;br /&gt;   Sabin             9&lt;br /&gt;&lt;br /&gt;This SP is communicative / Userfriendly. It accepts two parameters, UserName, which is a string and an IdString which is a '~' Concatenated String of JOB IDs the user have been selectd through the Check boxes in the Job listing Page.//Format of the IdString is ~71~5~88~1043~9&lt;br /&gt;&lt;br /&gt;CREATE PROCEDURE dbo.SplitAndInsert&lt;br /&gt;(&lt;br /&gt;@userName varchar(100),&lt;br /&gt;@idString varchar(100)&lt;br /&gt;)&lt;br /&gt;AS&lt;br /&gt;SET NOCOUNT ON&lt;br /&gt;DECLARE @splitstring varchar(100)&lt;br /&gt;DECLARE @substring varchar(50)&lt;br /&gt;Set @splitstring = @idString&lt;br /&gt;WHILE (CHARINDEX('~',@splitstring ,1)&lt;&gt;0)&lt;br /&gt;BEGIN&lt;br /&gt;SET @substring = substring(@splitstring ,1,CHARINDEX('~',@splitstring ,1)-1)-- Find Substring up to Separator&lt;br /&gt;PRINT @substringif @substring &lt;&gt; 0&lt;br /&gt;INSERT INTO CH_APPLIED_INFO(USER_NAME, JOB_ID)&lt;br /&gt;VALUES (@userName,@substring)SET @splitstring = substring(@splitstring ,Len(@substring)+2,Len(@splitstring ))&lt;br /&gt;-- SET The Original String after the Split END&lt;br /&gt;SET NOCOUNT OFF&lt;br /&gt;RETURN&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5892898493355582856?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5892898493355582856/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5892898493355582856' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5892898493355582856'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5892898493355582856'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/06/split-text-in-stored-procedure-and.html' title='Split Text In Stored Procedure and Insert in to the Table'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-5253632718304566392</id><published>2008-06-10T04:52:00.000-07:00</published><updated>2010-08-23T00:49:04.698-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Setting Transaction Scope'/><category scheme='http://www.blogger.com/atom/ns#' term='Transaction Scope'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>Transaction Scope Settings</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_4m9ZcVzpFsc/THIn5XTk6II/AAAAAAAAFWc/rvgAsdVOEqA/s1600/trans.JPG"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 335px;" src="http://2.bp.blogspot.com/_4m9ZcVzpFsc/THIn5XTk6II/AAAAAAAAFWc/rvgAsdVOEqA/s400/trans.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5508509160689690754" /&gt;&lt;/a&gt;&lt;br /&gt;You may open &lt;span style="font-weight:bold;"&gt;Control Panel\Administrative Tools\Component Services&lt;/span&gt;.&lt;br /&gt;Select&lt;b&gt; Component Services\Computer\My Computer&lt;/b&gt;,&lt;br /&gt;right-click and choose &lt;b&gt;Properties&lt;/b&gt;.&lt;br /&gt;On the &lt;b&gt;MSDTC tab&lt;/b&gt;, press "&lt;b&gt;Security Configuration&lt;/b&gt;..." and check if following options are  enabled&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Network DTC Access&lt;/b&gt;&lt;br /&gt;Under&lt;b&gt; Client and Administration&lt;/b&gt; &gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Allow Remote Clients, Allow Remote Administration&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Under&lt;b&gt; Transaction Manager&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;CommunicationAllow&lt;br /&gt;InboundAllow&lt;br /&gt;OutboundNo&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Authentication Required Enale XA Transactions&lt;br /&gt;And then reboot your computer and test again.&lt;br /&gt;&lt;br /&gt;Here is the Snippet for implementing Transaction Scope for Rolling out the Changes.&lt;br /&gt;&lt;br /&gt;&lt;div align="left"&gt;&lt;b&gt;using (TransactionScope scope = new TransactionScope())&lt;br /&gt;{&lt;br /&gt;try&lt;br /&gt;{    }  &lt;/b&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;b&gt; catch (Exception ex)   &lt;/b&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;b&gt;             {&lt;br /&gt;throw new Exception("Application cannot Save the entry as the mandatory fields are not filled");&lt;br /&gt;}               scope.Complete();&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt; &lt;/div&gt;&lt;div align="left"&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ms172152.aspx"&gt;http://msdn.microsoft.com/en-us/library/ms172152.aspx&lt;/a&gt; (Microsoft Pulled out this Page, I guess. )&lt;/div&gt;&lt;div align="left"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="left"&gt;&lt;span class="Apple-style-span"   style="color: rgb(51, 51, 51);   font-family:'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif;font-size:12px;"&gt;&lt;h3 class="post-name" style="color: rgb(0, 102, 221); clear: both; font-family: 'Segoe UI Semibold', 'Segoe UI', 'Lucida Grande', Verdana, Arial, Helvetica, sans-serif; font-weight: normal; line-height: 25px; font-size: 20px; margin-top: 0px; margin-right: 0px; margin-bottom: 12px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "&gt;&lt;a href="http://blogs.msdn.com/b/dbrowne/archive/2010/05/21/using-new-transactionscope-considered-harmful.aspx"&gt;Using new TransactionScope() Considered Harmful&lt;/a&gt;&lt;/h3&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-5253632718304566392?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/5253632718304566392/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=5253632718304566392' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5253632718304566392'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/5253632718304566392'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/06/transaction-scope-settings.html' title='Transaction Scope Settings'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_4m9ZcVzpFsc/THIn5XTk6II/AAAAAAAAFWc/rvgAsdVOEqA/s72-c/trans.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-4979694324007146926</id><published>2008-04-24T02:50:00.000-07:00</published><updated>2008-04-24T03:03:27.398-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='System.Transactions'/><category scheme='http://www.blogger.com/atom/ns#' term='Add Reference'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net'/><title type='text'>The type or namespace name 'Transactions' doesnot exist in the namespace 'System'</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_4m9ZcVzpFsc/SBBawhC-vyI/AAAAAAAABMk/kXUswREDd50/s1600-h/System.Transactions2.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5192750159909273378" style="WIDTH: 526px; CURSOR: hand; HEIGHT: 284px" height="333" alt="" src="http://3.bp.blogspot.com/_4m9ZcVzpFsc/SBBawhC-vyI/AAAAAAAABMk/kXUswREDd50/s400/System.Transactions2.JPG" width="595" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;The type or namespace name 'Transactions' doesnot exist in the namespace 'System' (are you missing an assembly reference&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Cause : You are missing a DLL.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Solution : This can be added by adding reference by right clicking in the solution in the Visual studio IDE. After adding this one, you can see the change in the Web.config file. You will see a new assembly been added there.. &lt;configuration&gt;&lt;br /&gt;&lt;system.web&gt;&lt;configuration&gt;&lt;br /&gt;&lt;system.web&gt;&lt;br /&gt;&lt;compilation&gt;&lt;br /&gt;&lt;assemblies&gt;&lt;br /&gt;&lt;add assembly="System.Transactions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"&gt;&lt;br /&gt;&lt;/assemblies&gt;&lt;br /&gt;&lt;/compilation&gt;&lt;br /&gt;&lt;/SYSTEM.WEB&gt;&lt;br /&gt;&lt;/configuration&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;compilation&gt;&lt;br /&gt;&lt;p align="left"&gt;&lt;a href="http://4.bp.blogspot.com/_4m9ZcVzpFsc/SBBZlxC-vxI/AAAAAAAABMc/4hcRASB3CcI/s1600-h/System.Transactions2.JPG"&gt;&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;assemblies&gt;&lt;br /&gt;&lt;add assembly="System.Transactions, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"&gt;&lt;br /&gt;&lt;/assemblies&gt;&lt;br /&gt;&lt;/compilation&gt;&lt;br /&gt;&lt;/SYSTEM.WEB&gt;&lt;br /&gt;&lt;/div&gt;&lt;/configuration&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-4979694324007146926?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/4979694324007146926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=4979694324007146926' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4979694324007146926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/4979694324007146926'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/04/type-or-namespace-name-transactions.html' title='The type or namespace name &apos;Transactions&apos; doesnot exist in the namespace &apos;System&apos;'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_4m9ZcVzpFsc/SBBawhC-vyI/AAAAAAAABMk/kXUswREDd50/s72-c/System.Transactions2.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-3426410364084118992</id><published>2008-04-22T02:21:00.000-07:00</published><updated>2008-04-22T02:43:37.736-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Ajax'/><category scheme='http://www.blogger.com/atom/ns#' term='Update Panel'/><title type='text'>sys.WebForms.PageRequestManagerParserErrorException:</title><content type='html'>sys.WebForms.PageRequestManagerParserErrorException: The message receieved from server could not be parsed. Common causes for this error are when the response is modified by calls to Response filters, HttpModules, or server trace is enabled.&lt;br /&gt;&lt;br /&gt;There are a couple of solutions available to this error:&lt;br /&gt;Try to put yur Sumbit button out of the Update Panel.&lt;br /&gt;&lt;br /&gt;do not use the HttpModule and rely on IIS compression, or move the application to the .NET Framework 3.5.&lt;br /&gt;Remove the HttpModule from web.config&lt;br /&gt;Assure ScriptResource is not compressed: &lt;scriptresourcehandler enablecaching="true" enablecompression="false"&gt;&lt;br /&gt;Open the IIS Manager&lt;br /&gt;Right click on "Web Sites" folder &gt; Properties&lt;br /&gt;Click the "Services" tab&lt;br /&gt;Check "Compress application files" and "Compress static files"&lt;br /&gt;Apply and confirm all dialogs&lt;br /&gt;Stop IIS&lt;br /&gt;Open a command prompt and go to C:\Inetpub\AdminScripts&lt;br /&gt;Run the following commands to add .js, .aspx and .axd to the compression list:&lt;br /&gt;cscript adsutil.vbs set W3SVC/Filters/Compression/GZIP/HcFileExtensions "htm" "html" "txt" "js"&lt;br /&gt;cscript adsutil.vbs set W3SVC/Filters/Compression/Deflate/HcFileExtensions "htm" "html" "txt" "js"&lt;br /&gt;cscript adsutil.vbs set W3SVC/Filters/Compression/GZIP/HcScriptFileExtensions "asp" "dll" "exe" "aspx"&lt;br /&gt;cscript adsutil.vbs set W3SVC/Filters/Compression/Deflate/HcScriptFileExtensions "asp" "dll" "exe" "aspx"&lt;br /&gt;Restart IIS&lt;br /&gt;You can also move the application to .NET Framework 3.5 instead, because the UpdatePanel control has been changed internally and now this problem should not happen anymore.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-3426410364084118992?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/3426410364084118992/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=3426410364084118992' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3426410364084118992'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/3426410364084118992'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/04/syswebformspagerequestmanagerparsererro.html' title='sys.WebForms.PageRequestManagerParserErrorException:'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8195829587148725966</id><published>2008-04-14T04:39:00.000-07:00</published><updated>2008-04-14T04:41:37.156-07:00</updated><title type='text'>The Name 'Request' does not exist in the current context</title><content type='html'>Nothing to worry about, since you can still access these properties, but using a different path.For example to access a cookie with the name MyCookie you would normally use Request.Cookies["MyCookie"]; however, if the error The name 'Request' does not exist in the current context is returned, use the following path for retrieving the cookie:&lt;br /&gt;System.Web.HttpContext.Current.Request.Cookies["MyCookie"].value;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8195829587148725966?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8195829587148725966/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8195829587148725966' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8195829587148725966'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8195829587148725966'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/04/name-request-does-not-exist-in-current.html' title='The Name &apos;Request&apos; does not exist in the current context'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-8066837578865389900</id><published>2008-04-04T00:41:00.000-07:00</published><updated>2008-04-04T00:46:51.237-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Configuration settings'/><category scheme='http://www.blogger.com/atom/ns#' term='Web.config'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.Net Ajax'/><title type='text'>Difference between the Web.config of a ASP.Net Website and an ASP.NET AJAX Enabled Website</title><content type='html'>When you create a new AJAX-enabled Web site, you can use the Web.config file provided in the installation package to add the required configuration settings. In Visual Studio, the Web.config file for Microsoft ASP.NET AJAX is included in your project when you create a new ASP.NET AJAX-enabled Web Site. But in a Normal ASP.Net Ajax website, you need to add it manually by right clicking on the Website in the Solution explorer.&lt;br /&gt;&lt;br /&gt;Adding ASP.NET AJAX Configuration Elements to an Existing Web Site&lt;br /&gt;In an existing Web site, you typically have values in the Web.config file that you want to retain. In that case, you can add the new ASP.NET AJAX elements into the existing Web.config file.&lt;br /&gt;The new elements are part of the following configuration sections:&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#configSections"&gt;The &lt;configsections&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#controls"&gt;The &lt;controls&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#assemblies"&gt;The &lt;assemblies&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#httpHandlers"&gt;The &lt;httphandlers&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#httpModules"&gt;The &lt;httpmodules&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#microsoftweb"&gt;The &lt;system.web.extensions&gt; element&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.asp.net/AJAX/Documentation/Live/ConfiguringASPNETAJAX.aspx#systemwebserver"&gt;The &lt;system.webserver&gt; element&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-8066837578865389900?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/8066837578865389900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=8066837578865389900' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8066837578865389900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/8066837578865389900'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/04/difference-between-webconfig-of-aspnet.html' title='Difference between the Web.config of a ASP.Net Website and an ASP.NET AJAX Enabled Website'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-763703479950007750</id><published>2008-01-11T11:29:00.000-08:00</published><updated>2008-01-11T11:32:56.685-08:00</updated><title type='text'>Could not load file or assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependenc</title><content type='html'>Ok I Don't know how it's working now for me but here what i did....&lt;br /&gt;1. Install the latest Asp.NET Ajax&lt;br /&gt;2.Open my web.config in my production server and replace this line&lt;br /&gt;&lt;add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"&gt;&lt;br /&gt;by&lt;br /&gt; &lt;add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"&gt;&lt;br /&gt;It's the same thing but the PublicKeyToken is in capitals....&lt;br /&gt;Save it and browse to my site and bingo!&lt;br /&gt;Hope this help...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-763703479950007750?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/763703479950007750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=763703479950007750' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/763703479950007750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/763703479950007750'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/01/could-not-load-file-or-assembly.html' title='Could not load file or assembly &apos;System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35&apos; or one of its dependenc'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-7313964815158931564</id><published>2008-01-08T01:27:00.000-08:00</published><updated>2008-01-08T01:29:01.142-08:00</updated><title type='text'>SQL Developer Installation Error</title><content type='html'>The application failed to initialise properly (0xc0000018). Click on OK to terminate the application&lt;br /&gt;&lt;br /&gt;The set up is for x32. It wont work in 64 Bit Os. Get a setup which suits for x64&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-7313964815158931564?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/7313964815158931564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=7313964815158931564' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7313964815158931564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/7313964815158931564'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/01/sql-developer-installation-error.html' title='SQL Developer Installation Error'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2400635795710127553.post-2036369481400582684</id><published>2008-01-08T01:21:00.000-08:00</published><updated>2008-01-08T01:27:38.076-08:00</updated><title type='text'>Unable to find the requested .NetFrameWork Data Provider. It may not be installed.</title><content type='html'>Problem is that, your Operating System will be of 64 bit. x64.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2400635795710127553-2036369481400582684?l=aksabin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://aksabin.blogspot.com/feeds/2036369481400582684/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=2400635795710127553&amp;postID=2036369481400582684' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2036369481400582684'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2400635795710127553/posts/default/2036369481400582684'/><link rel='alternate' type='text/html' href='http://aksabin.blogspot.com/2008/01/unable-to-find-requested-netframework.html' title='Unable to find the requested .NetFrameWork Data Provider. It may not be installed.'/><author><name>AK Sabin</name><uri>http://www.blogger.com/profile/05534645886323393397</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://4.bp.blogspot.com/_4m9ZcVzpFsc/SmiMMCmVqUI/AAAAAAAAEiA/KJJxE9ydXMc/S220/Pool.jpg'/></author><thr:total>0</thr:total></entry></feed>
