我自己写了个类库:using System;
using System.Data;
using System.Data.SqlClient;namespace test2
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
public class Class2
{
public Class2()
{
//
// TODO: 在此处添加构造函数逻辑
// SqlConnection connection=new SqlConnection(@"Data Source =10.6.0.23;Uid=sa;Pwd=copse2rver;
"+"Initial Catalog =ra_db");
connection.Open();
}
}
}
编译成test2.dll文件
另外建了和控制平台项目:
using System;
using System.Data;
using System.Data.SqlClient;using System.Runtime.InteropServices; [DllImport("test2.dll")]  //加载你要使用的DLL文件
public static extern class class2();
namespace DataReaderApp_60
{
/// <summary>
/// Class1 的摘要说明。
/// </summary>
class Class1
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main(string[] args)
{
//
// TODO: 在此处添加代码以启动应用程序
//
class2();
SqlCommand command = connection.CreateCommand(); command.CommandText = "SELECT dept,cxid from ra_usr"; SqlDataReader reader = command.ExecuteReader(); while(reader.Read())
{
Console.WriteLine("\t{0}\t{1}",reader["dept"],reader["cxid"]); }
}

}
}
ctrl+F5的时候报:
F:\信息资源管理系统\程序\DataReader1App\DataReader1App\Class1.cs(12): 类、结构或接口成员声明中的标记“{”无效
F:\信息资源管理系统\程序\DataReader1App\DataReader1App\Class1.cs(8): 修饰符“extern”对该项无效"
F:\信息资源管理系统\程序\DataReader1App\DataReader1App\Class1.cs(8): 修饰符“static”对该项无效
F:\信息资源管理系统\程序\DataReader1App\DataReader1App\Class1.cs(8): 应输入 {
不知哪里出错了,小弟第一次调用dll文件啊,请大虾们帮帮忙!!!

解决方案 »

  1.   

    你写的DLL是托管的,直接DataReaderApp_60项目上添加“引用”就可以了
      

  2.   

    你的这个DLL要添加引用才行。Add Reference。
    另外,你这样写在Class1中是得不到Class2中的Connection的。
    应该
    public class Class2
    {
         public SqlConnection connection;     public Class2()
        {
                    connection=new SqlConnection(@"Data Source =10.6.0.23;Uid=sa;Pwd=copse2rver;
    "+"Initial Catalog =ra_db");
    connection.Open();
    }
    }
    }
    然后在Class1中
    static void Main(string[] args)
    {
     class2  c2 = new  class2();
     SqlCommand command = c2.connection.CreateCommand();
     .............
    }