我有一个实现IEnumerable的集合类,我无法反序列化相同的序列化版本.我正在使用Json.net v 4.0.2.13623
这是我的集合类的简化版本,它说明了我的问题
public class MyType
{
public int Number { get; private set; }
public MyType(int number)
{
this.Number = number;
}
}
public class MyTypes : IEnumerable<MyType>
{
private readonly Dictionary<int, MyType> c_index;
public MyTypes(IEnumerable<MyType> seed)
{
this.c_index = seed.ToDictionary(item => item.Number);
}
public IEnumerator<MyType> GetEnumerator()
{
return this.c_index.Values.GetEnumerator();
}
IEnumerator IEnumerable.GetEnumerator()
{
return this.GetEnumerator();
}
public int CustomMethod()
{
return 1; // Just for illustration
}
}
Run Code Online (Sandbox Code Playgroud)
当我序列化它时,我得到以下json
[
{
"Number": 1
},
{
"Number": 2 …Run Code Online (Sandbox Code Playgroud) 我在ASP.net,c#中开发了一个Web服务,并在IIS上托管,由vba客户端使用.下载了Office 2003 Web Services 2.01工具包后,我遇到了成功创建所需代理类的问题(许多用户在线记录),并决定创建一个.net DLL库.我创建了一个库,它引用了Web服务并将其中一个方法暴露给c#中的公共函数.
我现在有三个问题:
如何在VBA中引用dll类?我试图去工具 - >引用并浏览到dll位置,但是我收到错误"无法添加对指定文件的引用".磁盘上是否有特定位置我必须复制.dll?
我还可以复制dll文件旁边的dll.config文件,以便在那里使用端点URL吗?
由于要调用的方法是接受一个对象(由各种成员和几个List <>成员组成,这些如何在VBA代码中实现?