Solución:
Primero, inicie el bloque de código con <% # en lugar de <% =:
<head id="head1" runat="server">
<title>My Page</title>
<link href="https://foroayuda.es/css/common.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="<%# ResolveUrl("~/javascript/leesUtils.js") %>"></script>
</head>
Esto cambia el bloque de código de un bloque de código Response.Write a una expresión de enlace de datos.
Ya que <%# ... %>
Las expresiones de enlace de datos no son bloques de código, CLR no se quejará. Luego, en el código de la página maestra, agregaría lo siguiente:
protected void Page_Load(object sender, EventArgs e)
{
Page.Header.DataBind();
}
También me encontré con este problema, pero encontré otra solución.
Descubrí que envolver los bloques de código con una etiqueta asp: PlaceHolder resuelve el problema.
<asp:PlaceHolder runat="server">
<meta name="ROBOTS" content="<%= this.ViewData["RobotsMeta"] %>" />
</asp:PlaceHolder>
(El CMS que estoy usando está insertando en la sección de encabezado de un código detrás que me restringió de agregar bloques de control personalizados con diversa información como meta-etiquetas, etc., así que esta es la única forma en que funciona para mí).
Puedo confirmar que moviendo el javascript con <% %>
etiquetas de la cabeza a la etiqueta del formulario corrige este error
AjaxControlToolkit, CalendarExtender e strana eccezione …