我想从IDesign使用ServiceModelEx库。当我尝试呼叫时:InProcProxyFactory.CreateInstance从WCF服务调用
InProcFactory.CreateInstance();
从与WCF服务(基本上是从调用WCF服务WCF服务B),我收到以下错误:
找不到动态组装
发生故障的代码是:
internal static Assembly[] GetWebAssemblies()
{
Debug.Assert(IsWebProcess());
List<Assembly> assemblies = new List<Assembly>();
if(Assembly.GetEntryAssembly() != null)
{
throw new InvalidOperationException("Can only call in a web assembly");
}
foreach(ProcessModule module in Process.GetCurrentProcess().Modules)
{
assemblies.Add(Assembly.LoadFrom(module.FileName));
if (module.ModuleName.StartsWith("App_Code.") && module.ModuleName.EndsWith(".dll"))
{
assemblies.Add(Assembly.LoadFrom(module.FileName));
}
if (module.ModuleName.StartsWith("App_Web_") && module.ModuleName.EndsWith(".dll"))
{
assemblies.Add(Assembly.LoadFrom(module.FileName));
}
}
if (assemblies.Count == 0)
{
throw new InvalidOperationException("Could not find dynamic assembly");
}
return assemblies.ToArray();
}
程序集不是用App_Web或App_Code预先固定的,因为这不是一个网站或一个Web应用程序(它是一个WCF服务)。但是,如果我从网站,Web应用程序或EXE调用该代码,代码确实可行。这是通过设计?
不,如果我看Process.GetCurrentProcess()模块,我可以看到我要找的DLL。 – user472292
开头的断言是否失败? – Peter