Condividi tramite


Esercitazione su RDS (VBScript)

Questa è l'esercitazione su RDS, scritta in Microsoft Visual Basic, Scripting Edition. Per una descrizione dello scopo di questa esercitazione, vedere Esercitazione su RDS.

Importante

A partire da Windows 8 e Windows Server 2012, i componenti del server di RDS non sono più inclusi nel sistema operativo Windows. Per altri dettagli, vedere la Guida di riferimento per la compatibilità di Windows 8 e Windows Server 2012. I componenti del client di RDS verranno rimossi in una versione futura di Windows. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Le applicazioni che usano RDS devono eseguire la migrazione a WCF Data Service.

In questa esercitazione vengono creati RDS.DataControl e RDS.DataSpace in fase di progettazione, ovvero vengono definiti con tag oggetto come questo: <OBJECT>...</OBJECT>. In alternativa, possono essere creati in fase di esecuzione con il metodo CreateObject (RDS). Ad esempio, l'oggetto RDS.DataControl potrebbe essere creato come segue:

Set DC = Server.CreateObject("RDS.DataControl")  
   <!-- RDS.DataControl -->  
   <OBJECT   
      ID="DC1" CLASSID="CLSID:BD96C556-65A3-11D0-983A-00C04FC29E33">  
   </OBJECT>  
  
   <!-- RDS.DataSpace -->  
   <OBJECT   
      ID="DS1" WIDTH=1 HEIGHT=1  
      CLASSID="CLSID:BD96C556-65A3-11D0-983A-00C04FC29E36">  
   </OBJECT>  
  
   <SCRIPT LANGUAGE="VBScript">  
  
   Sub RDSTutorial()  
   Dim DF1   

Passaggio 1: Specificare un programma del server

VBScript è in grado di individuare il nome del server Web IIS in cui è in esecuzione accedendo al metodo VBScript Request.ServerVariables disponibile per le pagine ASP:

"https://<%=Request.ServerVariables("SERVER_NAME")%>"  

Tuttavia, per questa esercitazione, usare il server immaginario "yourServer".

Nota

Prestare attenzione al tipo di dati degli argomenti ByRef. VBScript non consente di specificare il tipo di variabile, pertanto è sempre necessario passare un tipo Variant. Quando si usa HTTP, RDS consentirà di passare un tipo Variant a un metodo che prevede un tipo non Variant se viene richiamato con il metodo CreateObject dell'oggetto RDS.DataSpace. Quando si usa DCOM o un server in-process, è necessario che i tipi di parametri corrispondano sul lato client e server, altrimenti si riceverà l'errore "Tipo non corrispondente".

Set DF1 = DS1.CreateObject("RDSServer.DataFactory", "https://yourServer")  

Passaggio 2a: Richiamare il programma del server con RDS.DataControl

Questo esempio è semplicemente un commento che illustra che il comportamento predefinito di RDS.DataControl consiste nell'eseguire la query specificata.

<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DC1">  
   <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">  
   <PARAM NAME="Connect" VALUE="DSN=Pubs;">  
   <PARAM NAME="Server" VALUE="https://yourServer/">  
</OBJECT>  
...  
<SCRIPT LANGUAGE="VBScript">  
  
Sub RDSTutorial2A()  
   Dim RS  
   DC1.Refresh  
   Set RS = DC1.Recordset  
...  

Passaggio 2b: Richiamare il programma del server con RDSServer.DataFactory

Passaggio 3: Il server ottiene un recordset

Passaggio 4: Il server restituisce il recordset

Set RS = DF1.Query("DSN=Pubs;", "SELECT * FROM Authors")  

Passaggio 5: DataControl viene reso utilizzabile dai controlli visivi

' Assign the returned recordset to the DataControl.  
  
DC1.SourceRecordset = RS  

Passaggio 6a: Le modifiche vengono inviate al server con RDS.DataControl

Questo esempio è semplicemente un commento che illustra come RDS.DataControl esegue gli aggiornamenti.

<OBJECT CLASSID="clsid:BD96C556-65A3-11D0-983A-00C04FC29E33" ID="DC1">  
   <PARAM NAME="SQL" VALUE="SELECT * FROM Authors">  
   <PARAM NAME="Connect" VALUE="DSN=Pubs;">  
   <PARAM NAME="Server" VALUE="https://yourServer/">  
</OBJECT>  
...  
<SCRIPT LANGUAGE="VBScript">  
  
Sub RDSTutorial6A()  
Dim RS  
DC1.Refresh  
...  
Set RS = DC1.Recordset  
' Edit the Recordset object...  
' The SERVER and CONNECT properties are already set from Step 2A.  
Set DC1.SourceRecordset = RS  
...  
DC1.SubmitChanges  

Passaggio 6b: Le modifiche vengono inviate al server con RDSServer.DataFactory

DF.SubmitChanges "DSN=Pubs", RS  
  
End Sub  
</SCRIPT>  
</BODY>  
</HTML>  

Fine dell’esercitazione.

Vedi anche

Esercitazione su RDS