致电dynamic service = Activator.CreateInstance()
后,即使service.XXX
召集service
,我也会收到例外情况,但XXX
包含Type importServiceType;
importServiceType = Type.GetType(serviceName, true);
dynamic service = Activator.CreateInstance(importServiceType);
属性。
例如:
An unexpected exception occurred while binding a dynamic operation, Microsoft.CSharp.RuntimeBinder.RuntimeBinderInternalCompilerException
当我放置断点并进行调试时,我得到:
任何属性都会出现这种情况:service.JobId,service.JobDescription等。
错误:send(){
for(var i=0;i<this.items.length;i++) {
console.log(this.items[i].Quest_ID);
}
}
答案 0 :(得分:1)
在内部,所有类型名称都是完全限定的。这意味着如果处理两种类型相同,编译器将拒绝代码。除非来自相同的程序集,否则具有相同的命名空间和名称。
答案 1 :(得分:1)
以前在几行上发生了一些代码问题。 现在修好了。
答案 2 :(得分:0)
我遇到了这个,并通过对我想要强制使用的dll应用别名来修复它,并指定要加载的dll。
为.csprof文件添加别名
<Reference Include="Newtonsoft.Json.4.5.3, Version=4.5.0.0, Culture=neutral, PublicKeyToken=b9a188c8922137c6, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\Common\Newtonsoft.Json.4.5.3.dll</HintPath>
<Aliases>Newtonsoft453</Aliases>
</Reference>
然后在你的.cs文件中:
extern alias Newtonsoft453;
...
using Newtonsoft453::Newtonsoft.Json;