Optimizing Performance in ASP.NET
When migrating ASP applications to ASP.NET, you should be aware of the potential performance issues associated with the following subjects:
- Calls to unmanaged code
Managed-code calls to unmanaged components incur a marshaling cost and can noticeably affect performance. For best performance, COM components should be rewritten in managed code using a runtime-compatible language. If this is not possible, try reducing the number of calls between the managed and unmanaged boundary, with your code doing more work between calls. For more information, see Interoperating with Unmanaged Code.
- Late binding
ASP used the Server.CreateObject method to create an object of indeterminate type, as shown in the following example:
MyObject = Server.CreateObject("ProgId")
This kind of declaration still works with ASP.NET, but for best performance, the type of object should be declared when it is created:
Dim MyObject As New ObjectType
This can also be accomplished with slightly different syntax:
Dim MyObject As ObjectType = New ObjectType
Note that you will have to use the TlbImp utility in order to import the type into your page before declaring early-bound COM objects.