Tuesday, August 28, 2007

EXECUTE permission denied on object 'sp_sdidebug', database 'master', owner 'dbo'

Resolution:

In Visual Studio 2005, Disable T-SQL debugging if you dont want to debug SQL Queries. You can check Managed Code, so you can debug the C# code.

Wednesday, August 22, 2007

Load Test Web Applications Using Visual Studio Team System

Microsoft ACT requires VS.NET 2003 to be installed. For ASP.NET 2.0 applications, you can use VS.NET 2005 Team Suite for Load Test

This is good article on load testing using VS.NET 2005 Team Suite http://www.codeplex.com/PerfTesting/Wiki/View.aspx?title=How%20To:%20Load%20Test%20Web%20Applications%20Using%20VS.NET%202005&referringTitle=Visual%20Studio%20Team%20System%202005%20Index

HTTP 403.9 - Access Forbidden: Too many users are connected

Mostly if you use Windows 2000 or XP Professional, you need to deploy your application in Windows 2003 server..

http://support.microsoft.com/kb/262635

Maximum Number of Concurrent Connections to IIS6

if the OS is Windows 2000 or XP, then maximum no of concurrent users is limited to 10

if you have Windows 2003 server, it depends on the server memory and application caching..

http://blogs.msdn.com/david.wang/archive/2006/04/12/HOWTO-Maximize-the-Number-of-Concurrent-Connections-to-IIS6.aspx

http://support.microsoft.com/kb/262635

Tuesday, August 21, 2007

Cannot find template with id testproject-v1-wordManualTest for cSharp test Project

VS.NET Team Suite - After installing, I was not able to see WebTest, LoadTest templates in the test project.

Resolution:
1. Run devenv /resetuserdata in VS.NET command prompt

2. Run devenv /installvstemplates in VS.NET command prompt

http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1559338&SiteID=1

http://geekswithblogs.net/ehammersley/archive/2005/11/08/59451.aspx

Friday, August 17, 2007

Request Format is unrecognized

Enable

add name="Documentation"

in Web.Config

Limiting the Web Services Protocols

Open Web.Config

webServices
protocols
remove name="HttpPost"
remove name="HttpGet"
remove name="Documentation"
add name="HttpSoap"
/protocols
/webServices>

If you set web.config like this, it will allow only Soap protocol to access the web services. Through normal Internet Explorer, you cannot pass any parameters to the web services. Better security for production web services..

Disable WSDL File Generation for Web Services

Open Web.config

web services
protocols
remove name="Documentation"

This will disable WSDL File generation by WSDL.exe

Tuesday, August 14, 2007

Horizontal Accordian control

AJAX Accordian Control expands vertically. I have implemented horizontal expansion through CollapsiblePanel Extenders by


ExpandDirection="Horizontal" TargetControlID="leftDetail" ExpandControlID="sideHeader"
CollapsedImage="~/images/left.jpg" ExpandedImage="~/images/right_dull.jpg" CollapseControlID="leftHeader"
runat="server" Collapsed="true">

ExpandDirection="Horizontal" TargetControlID="sideDetail" ExpandControlID="leftHeader"
CollapsedImage="~/images/right.jpg" ExpandedImage="~/images/right_dull.jpg" CollapseControlID="sideHeader"
runat="server" Collapsed="false">

UpdatePanelAnimationExtender - OnUpdating always executed

As per
http://www.asp.net/AJAX/Control-Toolkit/Live/UpdatePanelAnimation/UpdatePanelAnimation.aspx

It is important to note that because of the UpdatePanel architecture, the OnUpdating animation will always play when any partial postback starts, but the OnUpdated animation will only play at the end of a partial postback if its UpdatePanel was changed (note: setting the UpdatePanel's UpdateMode="Always" will ensure the OnUpdated animation plays when every partial postback completes)

So we can't have UpdatePanelAnimationExtender for individual UpdatePanel in a page..

Tuesday, July 31, 2007

SQL Server 2005 Features comparison

Features comparison of different editions of SQL Server 2005

http://www.microsoft.com/sql/prodinfo/features/compare-features.mspx

AJAX Futures July 2007 release

Again another release within last 2 months. Waiting for these cooooool features in ASP.NEt

1. Dynamic Language Runtime - IronPython for ASP.NET and Managed JScript support
2. Dynamic light weight Data controls for ASP.NET
3. SilverLight support inside ASP.AJAX.NEt

New Controls in Futures

AJAX Futures May 2007 release has some additional controls like ListView and DetailView which supports concurrent update and asynchronous calls from javascript. It is coool.. but it is changing from release to release from Microsoft. So we have to wait for production release or next version of AJAX web Extension. Till then use updatepanel and partial postbacks...

gridview deleting rows by javascript web method calls

After deleting, updating rows of the gridview, if you want to update the gridview display, you can have a Delete web method call from javascript and RowDeleting method, you can refresh / rebind the gridview.

Reason for this.
1. It has lower overheads compared to direct ItemCommand delete, because ItemCommand method will try to find the control from gridview and get the value of the ID of the grid by iterating from row to row and column to column.

2. PageMethod is a static webmethod, so we can't have the access to the page controls

Asynchronous calls from javascript

Direct calls from javascript has async calls. Suppor if you have 3 web method calls from javascript, all the 3 calls are processed at the same time. So if the first method takes long time than the other two, it will return the results of method2 and method3 before method1

Programmatic update of the specific updatepanel

If you want to update a specific updatepanel after your database modification programmatically, you can do it by UpdatePanel1.Update()

Export to Excel from UpdatePanel

If you gridview inside update panel, then when you export to excel on button click using Response.ContentType and Response.write method, you will get an error of Sys.Page... error. To overcome this, in the triggers section, have
asp:PostBackTrigger ControlID=xlsExport .

CollapsiblePanelExtender Flicker

Make sure that you have the same space in the browser / div width.

Check for any additional rendering tags like td, and attributes like width, height in the both panels.

Wednesday, July 25, 2007

ModalPopup for GridView Editing rows

http://mattberseth.com/blog/2007/07/modalpopupextender_example_for.html

The simple one is making one dummy button to assign targetcontrolID property of the Modal Popup Extender.