javascript - Anexar cadena de consulta en el valor de propiedad de ruta<asp: ScriptReference>
asp.net telerik (1)
¿Has intentado generar la ruta a través del código del servidor?
protected void Page_Load(object sender, EventArgs e)
{
string path = string.Format("~/JavaScript.js?ver={0}", "versionNumber");
ScriptReference sr = new ScriptReference(path);
RadScriptManager1.Scripts.Add(sr);
}
O bien, puede agregar la etiqueta <script>
después del administrador de scripts, no habrá diferencia
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
</telerik:RadScriptManager>
<script src="../Scripts/MyScript.js?ver=<%=WebSettings.Version%>"></script>
Debido a que evita que el cliente use el navegador en caché, el archivo JavaScript antiguo, anexo una cadena de consulta a la ruta del archivo de script en mi aplicación web ASP.NET, y el contenido de la cadena de consulta proviene del código del lado del servidor. En el elemento HTML plano como:
<script src="../Scripts/MyScript.js?ver=<%=WebSettings.Version%>"></script>
La salida del cliente sería:
<script src="../Scripts/MyScript.js?ver=20160810"></script>
y funciona bien Pero este enfoque no funciona en <asp: ScriptReference>. Si uso este código:
<asp:ScriptReference Path="~/Scripts/MyScript.js?ver=<%=WebSettings.Version%>"/>
parece que ASP.NET tratará todo el contenido sobre el valor de Path como una cadena y ejecutará codificación HTML en él, y reproducirá dicho resultado:
<script src="../Scripts/MyScript.js?ver=<%=WebSettings.Version%>"></script>
Como <asp: ScriptReference> es un nodo secundario de <telerik: RadScriptManager> que no puedo simplemente modificar como una etiqueta HTML simple, ¿cómo puedo agregar una cadena de consulta dinámica en la ruta de <asp: ScriptReference> para resolver el JavaScript? problema de control de versiones de archivos?