27 messaggi dal 17 maggio 2005
Salve a tutti,
sono un neofita di XML o comunque poco esperto;
sto scrivendo un applicazione in j# ed ho un file xml (sotto riportato), a tale file devo passare tre parametri (quelli in grassetto) da codice e salvarlo come file html su disco.
innanzitutto vorrei sapere se ho scritto l'xml correttamente, e poi come fare per realizzare quello sopra descritto.. ecco il file xml

<?xml version="1.0" encoding="UTF-8" ?>
<stylesheet version="1.0" xmlns="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<html>
<head>
<title>VideoStreaming</title>
<link href="../../css/StyleView.css" type="text/css" rel="stylesheet"></link>
</head>
<body class="defaultvideobkg" onLoad="set_loopMode();set_bufferTiming()">
<table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="middle" align="center">
<object id="Player" classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6"
codebase="../../#Version=9,0,0,2980" type="application/x-oleobject"
width="100%" height="100%" align="absmiddle">
<param name="AutoStart" value="true"></param>
<param name="uiMode" value="none"></param>
<param name="showControls" value="true"></param>
<param name="showStatusBar" value="true"></param>
<param name="enableContextMenu" value="true"></param>
<param name="stretchToFit" value="true"></param>
<param name="AutoRewind" value="true">
<param name="Loop" value="true">
</object>
<input type="hidden" id="mCast" name="mCast" value={@filemcast}>
<input type="hidden" id="uCast" name="uCast" value={@fileucast}>
<input type="hidden" id="defVal" name="defVal" value={@filedefval}>
<SCRIPT language="JavaScript">
var i = 0;

var sMCast = Player.newMedia(document.all.mCast.value);
Player.currentPlayList.insertItem(i, sMCast);
i++;

if(document.all.uCast.value!="")
{
var sUCast = Player.newMedia(document.all.uCast.value);
Player.currentPlayList.insertItem(i, sUCast);
i++;
}

var sDefVid = Player.newMedia(document.all.defVal.value);
Player.currentPlayList.insertItem(i, sDefVid);

Player.settings.setMode('Loop', true);
Player.settings.setMode('AutoRewind', true);

Player.controls.play();
</SCRIPT>
</td>
</tr>
</table>
</body>
</html>
</xsl:template>
</stylesheet>

help please............
grazie ed a buon rendere

LA RISPOSTA E' DENTRO DI TE.........
PURTROPPO PERO' E' QUELLA SBAGLIATA.......
In realtà vuoi passare parametri ad un XSL, quindi:

Come prima cosa dichiara i parametri:

<?xml version="1.0" encoding="UTF-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<b>
<xsl:param name="filemcast" />
<xsl:param name="fileucast" />
<xsl:param name="filedefval" />
</b>

<xsl:template match="/"> 
<html> 

...
...


Sempre nel file XSL devi "stampare" il valore dei tuoi parametri utilizzando la sintassi:

<xsl:value-of select="@filemcast" />


dove, ovviamente, "filemcast" è il nome del tuo parametro. In particolare nel tuo esempio vuoi utilizzare i parametri per valorizzare un attributo di un elemento, quindi devi utilizzare una sintassi tipo:

<input type="hidden" id="mCast" name="mCast">
<xsl:attribute name="value">
<xsl:value-of select="@filemcast" />
</xsl:attribute>
</input>


Infine, questa volta nella tua applicazione .NET, devi valorizare i parametri:

XsltArgumentList xslargs = new XsltArgumentList();

xslargs.AddParam("filemcast", "", "valore dell'attributo filemcast");
...


Gli argomenti poi li devi passare al metodo Transform dell'Xsl.

Spero di non aver dimenticato nulla.

Ciao
Matteo

P.S.: scusa ma l'esempio di codice .NET è in C#, non in J#: a te la "traduzione" (se necessaria!)

Matteo Casati
GURU4.net
27 messaggi dal 17 maggio 2005
Grazie sei stato utilissimo,
a buon rendere....

LA RISPOSTA E' DENTRO DI TE.........
PURTROPPO PERO' E' QUELLA SBAGLIATA.......

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.