我正在使用 VS 2010。我创建了一个 C# 类并将其编译为 DLL,然后向其中添加了一个 windows 窗体项目来测试 dll。我在解决方案资源管理器的 TestApp 项目中添加了对 DLL 的引用。两个项目都编译没有错误。但是当我运行 TestApp 时,当我在 dll 中调用一个方法时,我会得到一个 NullReferenceException。错误说没有对象的实例,我不明白它是被调用的方法。
我所做的一切都与我在互联网上找到的其他 DLL 示例相同。例如: http: //msdn.microsoft.com/en-us/library/3707x96z (v=vs.100).aspx
http://coderock.net/how-to-create-a-dll-file-in-visual-studio-2010/
但我显然错过了一些基本的东西。
// DLL 项目
namespace SLink
{
public class AmpAPI
{
public String[] ReadID( Int32 id )
{
String[] result = new string[] { "A", "B", "C", "D" };
return result;
}
}
}
// 测试应用
using SLink;
namespace TestApp
{
public partial class frmMain : Form
{
AmpAPI amp;
public frmMain()
{
InitializeComponent();
}
private void frmMain_Load( object sender, EventArgs e )
{
amp = new AmpAPI();
}
private void btnUpdate_Click( object sender, EventArgs e )
{
String[] result = new String[] { "", "", "", "" };
result = amp.ReadID( 0 ); // <-- NullReferenceException
}
}
}