Hey guys,
I have a question about programmatically switching catalogs for the LLBL generated code.
We have an admin database and any number of uniquely named user databases(which may or may not end up being on a different server) and I would like to know what is the best way to switch between catalogs?
I attempted it with this code, but I got an exception:
TasksEntity task = new TasksEntity();
task.AccountId = View.AccountID;
task.UserId = View.UserID;
task.TaskTypeId = 1;
task.TaskStatusId = 1;
task.Note = _list.MailingListFriendlyName;
CatalogNameOverwriteHashtable changeme = new CatalogNameOverwriteHashtable();
changeme.Add("Administration_PubV7_Main", _schemaName);
SchemaNameOverwriteHashtable schemachange = new SchemaNameOverwriteHashtable();
schemachange.Add("dbo", "dbo");
using (DataAccessAdapter da = new DataAccessAdapter(strConn, false, changeme, schemachange))
{
da.SaveEntity(task);
}
Here's the exception:
The element name 'TasksEntity' isn't known in this provider
Parameter name: elementName
And the stack trace:
" at SD.LLBLGen.Pro.ORMSupportClasses.PersistenceInfoProviderBase.GetElementMappingInfo(String elementName)
at SD.LLBLGen.Pro.ORMSupportClasses.PersistenceInfoProviderBase.GetAllFieldPersistenceInfos(String elementName)
at SD.LLBLGen.Pro.ORMSupportClasses.PersistenceInfoProviderBase.GetAllFieldPersistenceInfos(IEntity2 entity)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.GetFieldPersistenceInfos(IEntity2 entity)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.PersistQueue(List`1 queueToPersist, Boolean insertActions, Int32& totalAmountSaved)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.SaveEntity(IEntity2 entityToSave, Boolean refetchAfterSave, IPredicateExpression updateRestriction, Boolean recurse)
at SD.LLBLGen.Pro.ORMSupportClasses.DataAccessAdapterBase.SaveEntity(IEntity2 entityToSave)
at BlueSkyFactory.Publicaster7.Public.Presenter.ListManagerPresenter.ImportList(Stream File, String PrimaryKeyField, String Action, String FileType, String Delimiter, IMainView View) in D:\\Publicaster7\\Publicaster7\\Public\\BlueSkyFactory.Publicaster7.Public.Presenter\\Classes\\ListManagerPresenter.cs:line 367
at BlueSkyFactory.Publicaster7.CI.List.Controls.wucListImport.btnUploadFile_Click(Object sender, EventArgs e) in D:\\Publicaster7\\Publicaster7\\Public\\WebUI\\BlueSkyFactory.Publicaster7.CI\\List\\Controls\\wucListImport.ascx.cs:line 87
at System.Web.UI.WebControls.Button.OnClick(EventArgs e)
at System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument)
at System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument)
at System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)"
We are using LLBLGen Pro v2.5 final and SQL Server 2005 Enterprise.
Any help would be greatly appreciated.
Thanks,
Ilija