Référencer des scripts dans une MasterPage

Il m'est arrivé récemment d'avoir un problème de référencement de me scripts JavaSript dans ma MasterPage. En effet ayant une arborescence compliquée (cf. ci-dessous), les chemins des fichiers se perdent un peu au moment du rendu.

> Site (Contient des pages qui implémente mes MasterPage)
    > Scripts (Contient mes fichiers js)
    > Master (Contient mes MasterPage)
    > CollectionPage1 (Contient des pages qui implémente mes MasterPage)
        > CollectionPage2 (Contient des pages qui implémente mes MasterPage)
    > CollectionPage3 (Contient des pages qui implémente mes MasterPage)

La question est donc : Comment référencer des scripts dans une MasterPage afin que le chemin soit toujours juste, et ce, peux importe ou se trouve ma page dans mon arborescence projet ? La réponse est de référencer les scripts dans l'événement Page_PreRender de la MasterPage (ou page) et faire un ResolveUrl sur le chemin du script, afin qu'a chaque rendu, la MasterPage puisse trouver le script sans problème, peut importe la page qui l'appelle.

protected void Page_PreRender(object sender, EventArgs e)
{
  this.Page.ClientScript.RegisterClientScriptInclude("MonScript1", this.ResolveUrl("~/Scripts/MonScript1.js"));
  this.Page.ClientScript.RegisterClientScriptInclude("MonScript2", this.ResolveUrl("~/Scripts/MonScript2.js"));
  this.Page.ClientScript.RegisterClientScriptInclude("MonScript3", this.ResolveUrl("~/Scripts/MonScript3.js"));
}


Tags: , ,
Catégories: ASP.Net

0 Commentaires
Actions: Permalink | Comment RSSRSS comment feed

Execution fichier script SqlServer

Récemment j'ai été confronté à une problématique étrange, l'impossibilité d'exécuter des fichiers sql dans d'autre fichier sql avec SqlServer. En effet venant du monde Oracle, je pensais bêtement qu'il y avait un équivalent au '@' pour l'exécution de fichier.

Après de nombreuses investigations, je me suis aperçu que la seule façon de faire était de passer en mode SqlCommand (SqlCmd). Car une fois passé dans ce mode on peut lancer un série de fichier script avec le mot clé ":r".

:r C:\Scripts\MonScript_01.sql

:r C:\Scripts\MonScript_02.sql

De plus on peut activer l'erreur sur la première erreur via l'instruction ":On Error exit", ce qui permet un comportement similaire à Oracle avec arrêt en cas de problème.


Tags: ,
Catégories: SqlServer

0 Commentaires
Actions: Permalink | Comment RSSRSS comment feed