WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Server.CreateObject / CreateObject (https://www.wn.se/forum/showthread.php?t=1038391)

MikaelS 2009-10-06 16:20

Server.CreateObject / CreateObject
 
Hej,

Jag använder följande för att påbörja kopplingen mot en Access:
Set rs = Server.CreateObject("ADODB.Connection")


Så var det någon som sa till mig så här:
Funktionen Server.CreateObject är tydligen ett gammalt kommando, man bör i nyare versioner använda endast CreateObject

Jag har testat båda varianterna, och båda fungerar - någon som vet om det senare är bättre ur "serverns" synvinkel?

eliasson 2009-10-06 16:42

Det är inte så att du inkluderar namespace "Server" i ditt projekt, och därmed "fungerar" även CreateObject() - som egentligen är samma method.

MikaelS 2009-10-06 16:49

Nej, inkluderar inte det i projektet.


Här är en kort text om skillnaden (från www.4guysfromrolla.com):
Server.CreateObject invokes Microsoft Transaction Server (MTS) to create the object and handle it, whereas CreateObject goes straight to it.

While I have found no articles written on these two, the conclusion comes from the fact that if you have an erroneous object, CreateObject gives you an error, but when you do Server.CreateObject, it gives you an error and logs an error in the event log, viewable via Event Viewer.

This can become significant if you are writing a component that deals with transactions, as it would be a good safety net to pass it through MTS, because you will be using MTS commands. However, if you are not using MTS, you could create processor and memory over head by passing it through Server.CreateObject. This makes it a better idea to use CreateObject, because it goes straight through.

tartareandesire 2009-10-07 16:12

Det finns som du antyder egentligen ingen anledning till att inte använda det kortare CreateObject men jag tror inte det har någon märkbar betydelse vad gäller prestanda om det var det du tänkte på. Det är ju enkelt att testa om man vill dock.


Alla tider är GMT +2. Klockan är nu 04:56.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson