Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Hash table error
Message
De
10/09/2007 08:42:30
Bill Oeftering
Mainstreet Computers, Inc.
Belleville, Michigan, États-Unis
 
 
À
Tous
Information générale
Forum:
ASP.NET
Catégorie:
The Mere Mortals .NET Framework
Titre:
Hash table error
Versions des environnements
Environment:
C# 2.0
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
MS SQL Server
Divers
Thread ID:
01253381
Message ID:
01253381
Vues:
76
Asp.Net 2.0 MM Vers 2.4
I have a web app that connects to different databases for different companies. I determine which company to connect in the Page_Load and set the databasekey on my business objects. Of cource, I have the proper connection strings in the config file. This all works fine most of the time. I'm getting an error in the mmDatabaseManager when it tries to add the key to the hash table. Is it possible multiple sessions are trying to add this at the same time ? Do I have to do some kind of app lock to get this to be reliable ? I have 10 sites and getting about 4 errors like this per day.

In may config file I have each connection string and dataaccessclass specified:
<add key="AB2253A\Connection" value="server=serverm\WEB;database=webquote_AB2253A;uid=glasave;pwd=*****;"/>
<add key="AB2253A\DataAccessClass" value="DataAccessSql"/>
<add key="SC0313A\Connection" value="server=serverm\WEB;database=webquote_SC0313A;uid=glasave;pwd=*****;"/>
<add key="SC0313A\DataAccessClass" value="DataAccessSql"/>
Below in the error
Thanks
Bill

Message:Item has already been added. Key in dictionary: 'UNI7854' Key being added: 'UNI7854'
Source:mscorlib
Date:9/9/2007 8:20:02 PM
Stack: at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.Collections.Hashtable.Add(Object key, Object value)
at OakLeaf.MM.Main.Managers.mmDatabaseManager.GetDataAccessClassName(String databaseKey)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetDataAccessObject(String databaseKey)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetDataTables(DataSet ds, String tableName, String databaseKey)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetEmptyDataSet(DataSet ds, String tableName, String databaseKey)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetEmptyDataSet(String tableName, String databaseKey)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetEmptyDataSet(String tableName)
at OakLeaf.MM.Main.Business.mmBusinessObject.GetEmptyDataSet()
at ctlwebquote2.ClearQuote()
at ctlwebquote2.Page_Load(Object sender, EventArgs e)
at System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e)
at System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
at System.Web.UI.Control.OnLoad(EventArgs e)
at OakLeaf.MM.Main.Web.UI.WebControls.mmUserControl.OnLoad(EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform