Utilisez SquishIt et obtenez l'erreur 'La collection de contrôles ne peut pas être modifiée car le contrôle contient des blocs de code'

StackOverflow https://stackoverflow.com/questions/8416558

  •  29-10-2019
  •  | 
  •  

Question

J'écris un projet de site Web .net 2.0 et j'utilisais volontiers SquishIt pendant un certain temps pour réduire et combiner par CSS et Javascript.J'ai récemment commencé à recevoir cette erreur:

The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>). 

HttpException (0x80004005): The Controls collection cannot be modified because the control contains code blocks (i.e. <% ... %>).]
   System.Web.UI.ControlCollection.Add(Control child) +11035338
   Telerik.Web.SkinRegistrar.RegisterCssReference(Page _page, Control _control, String _url) +413

[HttpException (0x80004005): Please, see whether wrapping the code block, generating the exception, within RadCodeBlock resolves the error.]
   Telerik.Web.SkinRegistrar.RegisterCssReference(Page _page, Control _control, String _url) +533
   Telerik.Web.SkinRegistrar.RegisterCssReferences(ISkinnableControl _control) +828
   Telerik.Web.UI.RadComboBox.OnPreRender(EventArgs e) +32
   System.Web.UI.Control.PreRenderRecursiveInternal() +108
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Control.PreRenderRecursiveInternal() +224
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3394

Comme vous pouvez le voir, nous utilisons également les contrôles Telerik sur le site, donc je soupçonne que c'est le problème.

J'ai essayé d'utiliser l'API SquishIt pour appeler les commandes Add et Render à partir du code derrière mais cela n'a produit aucun résultat.

Des idées?Je préfère ne pas abandonner SquishIt car il fonctionne très bien autrement.

Était-ce utile?

La solution

J'ai trouvé la solution.Il s'avère que lorsque vous utilisez les contrôles Telerik Rad sur votre site et que vous avez des blocs de code dans l'en-tête de vos pages maîtres, vous devez inclure un Balise de bloc de code Telerik .

Avec cette balise en place, je peux maintenant utiliser SquishIt sans erreur!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top