Skip Navigation LinksHome / Community & Support / Developer Productivity Tools Forums / ASP.NET AJAX > SkinManager > Exception after upgrade to 2011.2.712: Item has already been added

Not answered Exception after upgrade to 2011.2.712: Item has already been added

Feed from this thread
  • Eliyahu Goldin avatar

    Posted on Sep 8, 2011 (permalink)

    I have a page with a SkinMaster control:

    <telerik:RadSkinManager ID="RadSkinManager1" runat="server" ShowChooser="false" Skin="Sunset"</telerik:RadSkinManager>

    The page was working ok in production environment for about a year. Recently, I upgraded to Telerik.Web.UI.dll 2011.2.712.40. After that I started getting exceptions of this type:

    Exception type: ArgumentException

        Exception message: Item has already been added. Key in dictionary: 'Telerik.Web.SkinsAssembly'  Key being added: 'Telerik.Web.SkinsAssembly'

       at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)

       at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String name, Object value)

       at Telerik.Web.SkinRegistrar.GetDefaultSkinsAssemblyName()

       at Telerik.Web.SkinRegistrar.GetAllEmbeddedSkins(RadSkinManager skinManager)

       at Telerik.Web.UI.RadSkinManager.FillSkins(RadComboBox chooser)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


    The error seems to be random, it appeared twice within 10 days. So far i can't reproduce it. I get notified about the error from my web server alert service and I don't know if users get any visual indications of the error or no. I have no way of asking the users.

    Any clues?

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Sep 14, 2011 (permalink)

    Hello Eliyahu,

    Thanks for reporting this observation. Our development team is currently looking into it and will be getting back with more information. Please, stand by.

    Regards, Tsvetoslav
    the Telerik team

    Check out Telerik Trainer, the state of the art learning tool for Telerik products.

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Sep 14, 2011 (permalink)

    Hello Eliyahu,

    This exception is not expected - what the stack traces says is that a duplicate entry for "Telerik.Web.Skins" is being added to the AppSettings configuration setting. Could you check if you are not modifying the AppSettings at some place in your code and if the problem persists, send us a small runnable example of you implementation so that we can take a closer look.

    Thanks in advance.

    Regards, Tsvetoslav
    the Telerik team
    Browse the vast support resources we have to jump start your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal

    Reply

  • Mark Kucera avatar

    Posted on Oct 20, 2011 (permalink)

    Was there any resolution to this?  I have this problem as well.  Like the original poster said, it's not really reproducible on-demand.  i get an email of all the exceptions on my website and i see this one come through every so often.

    Error Occurred: 10/19/2011 4:13 PM
    Exception: System.ArgumentException
    Message: Item has already been added. Key in dictionary: 'Telerik.Web.SkinsAssembly'  Key being added: 'Telerik.Web.SkinsAssembly'
    RequestString: /campaign/EmailMain.aspx?
    secID=3&subNav=8&Mode=New
    Server: xxxxxxxxxxxxx
    User Identity: xxxxxxxxxx
    StackTrace:
      at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
      at System.Collections.Hashtable.Add(Object key, Object value)
      at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String name, Object value)
      at System.Collections.Specialized.NameObjectCollectionBase.BaseSet(String name, Object value)
      at System.Collections.Specialized.NameValueCollection.Set(String name, String value)
      at System.Collections.Specialized.NameValueCollection.set_Item(String name, String value)
      at Telerik.Web.SkinRegistrar.GetDefaultSkinsAssemblyName()
      at Telerik.Web.SkinRegistrar.GetAllEmbeddedSkinAttributes(RadSkinManager skinManager, Type controlType)
      at Telerik.Web.SkinRegistrar.GetAllEmbeddedSkinAttributes(Type controlType, Page page)
      at Telerik.Web.UI.Common.BaseClass.GetShortControlName(Control control)
      at Telerik.Web.UI.Common.BaseClass.GetValueFromConfig(String keyFormat, Control control)
    - Show quoted text -
      at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

    I'm using version 2011.2.712.35

    -Mark

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Oct 25, 2011 (permalink)

    Hi Mark,

    We have not yet encountered this problem neither could we reproduce it and hence no solution has been looked for. I'd ask you the same question addressed to Mark: could you check if you are not modifying the AppSettings at some place in your code and if not, upgrade to the latest internal build of the controls or the beta of the Q3 2011 one and see if the problem persists.

    Greetings, Tsvetoslav
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

  • Posted on Oct 27, 2011 (permalink)

    Hi,

    Same problem here which occurs randomly but each time we get the error message... the IP demonstrates that a robot was browsing the website.

    Here is a fresh example, hope it may help..

    ** Events **

    ---------------

    Event code: 3005

    Event message: An unhandled exception has occurred.

    Event time: 10/27/2011 3:41:58 AM

    Event time (UTC): 10/27/2011 1:41:58 AM

    Event ID: 9f982257e01e4deda4e103e61a3b9fa1 Event sequence: 6 Event occurrence: 1 Event detail code: 0

     

    Process information:

        Process ID: 1356

        Process name: w3wp.exe

        Account name: AUTORITE NT\SERVICE RÉSEAU

     

    Exception information:

        Exception type: System.ArgumentException

        Exception message: Item has already been added. Key in dictionary: 'Telerik.Web.SkinsAssembly'  Key being added: 'Telerik.Web.SkinsAssembly'

     

    Request information:

        Request URL: http://www.saniverte.com/Default.aspx

        Request path: /Default.aspx

        User host address: 178.154.200.158

        User:

        Is authenticated: False

        Authentication Type:

        Thread account name: AUTORITE NT\SERVICE RÉSEAU

     

    Thread information:

        Thread ID: 5

        Thread account name: AUTORITE NT\SERVICE RÉSEAU

        Is impersonating: False

        Stack trace:    at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)

       at System.Collections.Hashtable.Add(Object key, Object value)

       at System.Collections.Specialized.NameObjectCollectionBase.BaseAdd(String name, Object value)

       at System.Collections.Specialized.NameObjectCollectionBase.BaseSet(String name, Object value)

       at System.Collections.Specialized.NameValueCollection.Set(String name, String value)

       at Telerik.Web.SkinRegistrar.GetDefaultSkinsAssemblyName()

       at Telerik.Web.SkinRegistrar.GetAllEmbeddedSkins(RadSkinManager skinManager)

       at Telerik.Web.UI.RadSkinManager.FillSkins(RadComboBox chooser)

       at Telerik.Web.UI.RadSkinManager.OnInit(EventArgs e)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


    Thanks :-)

    Dider

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Oct 28, 2011 (permalink)

    Hello Didier,

    This exception could happen also in case you have set the AppSettings["Telerik.Web.SkinsAssembly"] to an empty string. Please, check that. In addition, did you upgrade to the latest version of the controls, is the result the same?


    Regards, Tsvetoslav
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

  • Posted on Oct 28, 2011 (permalink)

    Hi,

    We get the problem wit both versions 2011.2712.40 and 2011.2.915.40. This morning there was 2 errors caused by MSN bot during the night when it was browsing www.atxoom.com. This website uses  2011.2.915.40. I made a special copy of the web.config here: www.atxoom.com/web.config.txt . There is no reference to Telerik.Web.SkinsAssembly in AppSettings.

    Yesterday, before submitting my comment, I tried to add <add key="Telerik.Web.SkinsAssembly" value="Telerik.Web.SkinsAssembly" /> as suggested in an other article from Telerik community website but it gave troubles as we are using skins (!):
    Thread information:

        Thread ID: 19

        Thread account name: x

        Is impersonating: False

        Stack trace:    at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)

       at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks)

       at System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection, Boolean suppressSecurityChecks)

       at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection)

       at System.Reflection.Assembly.Load(String assemblyString)

       at Telerik.Web.SkinRegistrar.GetAllEmbeddedSkins(RadSkinManager skinManager)

       at Telerik.Web.UI.RadSkinManager.FillSkins(RadComboBox chooser)

       at Telerik.Web.UI.RadSkinManager.OnInit(EventArgs e)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Control.InitRecursive(Control namingContainer)

       at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)


    From now we are running with: <add key="Telerik.Web.SkinsAssembly" value="DISABLED" /> (as suggested in the previously mentioned article). I'll tell you within a few days if this particular web still get problems :-)

    Our Masterpage looks like this:
    <form id="form1" runat="server">
       
        <telerik:RadScriptManager ID="RadScriptManager1" runat="server">
            <Scripts>
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.Core.js" />
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQuery.js" />
                <asp:ScriptReference Assembly="Telerik.Web.UI" Name="Telerik.Web.UI.Common.jQueryInclude.js" />
            </Scripts>
        </telerik:RadScriptManager>
     
        <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server"></telerik:RadAjaxManager>
      
        <telerik:RadSkinManager ID="RadSkinManager1" Runat="server"></telerik:RadSkinManager>
     
     
        <telerik:RadAjaxPanel ID="RadAjaxPanel1" runat="server" LoadingPanelID="LoadingPanel1" clientevents-onrequeststart="OnResponseStart" clientevents-onresponseend="OnResponseEnd">
     
            <div class="Container">
            ..... .... ..... ....
            </div>
      
            <telerik:RadWindowManager ID="RadWindowManager1" modal="true" showcontentduringload="true" animation="None" visiblestatusbar="false"
                behaviors="Move" runat="server"></telerik:RadWindowManager>
      
        </telerik:RadAjaxPanel>
        <telerik:RadAjaxLoadingPanel ID="LoadingPanel1" runat="server" />
     
    </form>

    Best regards,

    Didier

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Oct 30, 2011 (permalink)

    Hi Didier,

    We will be awaiting your feedback.

    Greetings, Tsvetoslav
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

  • Posted on Nov 17, 2011 (permalink)

    I'm seeing this with 2077.2.915.40.

    It's happened only 2 or 3 times on a pretty busy site (10,000-15,000 page requests per day), and I've never seen it on any of the other site that utilize the same code base. 

    I was just looking to see if this was a known problem.  Sorry I don't have any good input other than to report that I've seen this, too.

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Nov 18, 2011 (permalink)

    Hi all,

    I am glad to inform you that our development team managed to track the issue and a fix for that will be available in the next latest internal build of the controls that is coming out by the middle of next week. Thanks for the cooperation - the telerik points of all the participants in the forum discussion who have reported the issue have been updated accordingly.

    Regards, Tsvetoslav
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

  • Posted on Nov 18, 2011 (permalink)

    Excellent news.  Good job as always Telerik!

    Reply

  • Ang Lim avatar

    Posted on Nov 24, 2011 (permalink)

    Hi  Tsvetoslav, is the fix for Item has already been added. Key in dictionary: 'Telerik.Web.SkinsAssembly'  Key being added: 'Telerik.Web.SkinsAssembly' been released?

    Thanks

    Reply

  • Tsvetoslav Tsvetoslav admin's avatar

    Posted on Nov 25, 2011 (permalink)

    Hi Ang Lim,

    Yes, the latest internal build of the controls does contain the fix for the issue.

    Greetings, Tsvetoslav
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

  • John avatar

    Posted on Dec 23, 2011 (permalink)

    So what version number contains the fix?

    Reply

  • Iana Tsolova Iana Tsolova admin's avatar

    Posted on Dec 27, 2011 (permalink)

    Hi,

    The fix in question is still not available in any of the official versions of RadControls for ASP.NET AJAX. However you can download the Latest Internal Build from your account and use it while the release of the Q3 2011 SP.

    Kind regards,
    Iana Tsolova
    the Telerik team
    If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now

    Reply

Back to Top

Skip Navigation LinksHome / Community & Support / Developer Productivity Tools Forums / ASP.NET AJAX > SkinManager > Exception after upgrade to 2011.2.712: Item has already been added