我有一个项目正在尝试连接到 Sage 200。但是它抱怨现在类型初始化失败通常与程序集不在缓存中有关,但这次是。我已经重启了,
我收到的错误我还运行了 gac 实用程序以确保它在程序集缓存中,如下所示,它是 Sage。
主要错误是:
{“'Sage.MMS.SAA.Client.SAAClientAPI' 的类型初始化程序引发了异常。”}
但是当进一步调试时,会显示以下内容
“无法将类型 'Sage.MMS.SAA.Client.ISAAClient (ContractName=\"Sage.MMS.SAA.Client.ISAAClient\")' 的基础导出值转换为类型 'Sage.MMS.SAA.Client.ISAAClient' 。”
此代码适用于其他导入,因此我认为它与程序集文件有关。
public bool ConnectToSage()
{
try
{
application = new Sage.Accounting.Application();
// Use the Connect method (no parameters required)
application.Connect();
foreach (var item in application.Companies)
{
if (((Sage.Accounting.Company)item).Name == Properties.Settings1.Default.CompanyName)
{
application.ActiveCompany = (Sage.Accounting.Company)item;
log.Info("Connected to company: " + Properties.Settings1.Default.CompanyName);
return true;
}
}
}
catch(TypeInitializationException ex)
{
}
return false;
}