c#生成动态库并加载

摘要:
下面这段代码生成dll文件,不能编译运行。点击项目右键,点击生成,这时会在debuge文件中生成相应的配置文件。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingSystem.Data;usingSystem.Data.OleDb;namespaceAccessDll{publicclassClass1{publicvoidshow_Data{OleDbConnectionstrConnection=newOleDbConnection;//建立数据库引擎链接OleDbDataAdaptermydata=newOleDbDataAdapter;//建立适配器DataSetmyds=newDataSet();//填充数据表mydata.Fill;//用控件显示dGV_Data.DataSource=myds.Tables["datatable"];}}}上面的程序生成配置文件下面的程序调用该配置文件,在引用中添加上面生成的配置文件。会遇到各种版本的限制。

下面这段代码生成dll文件,不能编译运行。点击项目右键,点击生成,这时会在debuge文件中生成相应的配置文件。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data;
using System.Data.OleDb;

namespace AccessDll
{
    public class Class1
    {
        public void show_Data(DataGridView dGV_Data, Button btn_show_Click)
        {
            OleDbConnection strConnection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=myTable.accdb;Persist Security Info=False;");
            // 建立数据库引擎链接
            OleDbDataAdapter mydata = new OleDbDataAdapter("select * from myTable", strConnection);
            // 建立适配器                                                                                                                                                                                                               
            DataSet myds = new DataSet();
            // 填充数据表
            mydata.Fill(myds, "datatable");
            //用控件显示
            dGV_Data.DataSource = myds.Tables["datatable"];
        }
    }
}

上面的程序生成配置文件

下面的程序调用该配置文件,在引用中添加上面生成的配置文件。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using AccessDll;

namespace MyAccess
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void btn_Click_Click(object sender, EventArgs e)
        {
            AccessDll.Class1 mydata = new Class1();
            mydata.show_Data(dGV,btn_Click);
        }
    }
}

注:上面的程序是连接Access数据库,在winform窗体中显示Access数据库中的数据。

会遇到各种版本的限制。

免责声明:文章转载自《c#生成动态库并加载》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇PIC 里面关于 __CONFIG( ) 配置位获取List集合中最大值的方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

2018-2019-2 20175126谢文航 实验三《敏捷开发与XP实践》实验报告

一、实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年5月2日 实验时间:--- 实验序号:实验三 实验名称:敏捷开发与XP实践 实验内容 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习《Linux基础入门(新版)》...

c# Winform GridControl 给列自动生成快捷操作按钮

话不多说直接上代码: using DevExpress.XtraEditors.Controls; using DevExpress.XtraEditors.Repository; using DevExpress.XtraGrid; using DevExpress.XtraGrid.Columns; using DevExpress.XtraGrid....

ASP.NET中EVAL用法大全

<%# Bind("Subject") %> //绑定字段<%# Container.DataItemIndex + 1%> //实现自动编号<%# DataBinder.Eval(Container.DataItem, "[n]") %>通常使用的方法(这三个性能最好)<%# DataBinder.Eval(Co...

Java中判断String不为空的问题性能比较

 function 1: 最多人使用的一个方法, 直观, 方便, 但效率很低. function 2: 比较字符串长度, 效率高, 是我知道的最好一个方法. function 3: Java SE 6.0 才开始提供的方法, 效率和方法二几乎相等, 但出于兼容性考虑, 不推荐使用    以下是三种方法在机器上的运行结果: (机器性能不一, 仅供参考) fu...

C#实现JSON序列化与反序列化

JSON(JavaScript Object Notation)——JavaScript对象表示法,是JavaScript用来处理数据的一种格式,大部分是用来处理JavaScript和web服务器端之间的数据交换,把后台web服务器的数据传递到前台,然后使用JavaScript进行处理,例如ajax等,是独立于语言和平台的轻量级的数据交换格式。 JSO...

守护线程会不会执行finally?默认情况new thread怎么样确定守护状态?

finally throw return 中,线程的状态及interrupt 守护线程在退出的时候并不会执行finnaly块中的代码 线程池造成服务器内存泄漏 中所述,新建线程默认上使用建立线程时的当前线程所处的守护状态 本文予以验证: package fin; /** * Created by joyce on 2019/12/16. */ pub...