zoukankan      html  css  js  c++  java
  • DBLinq (MySQL exactly) Linq To MySql(转)

    Linq to SQL很好用,可惜只支持Microsoft SQL Server 和Microsoft SQL Server Compact Edition,目前比较成熟的免费解决方法是DBLinq(PS:ALinq超贵,实际上很多类似的小东西都超贵),它可以提供provider实现Linq to MySQL, Linq to SQLite, Linq to Oracle, Linq to PostgreSql... 甚至Linq to SQL Server on Linux.

    一、工具:

    Dblinq ;
    MySQL 5.0以上,编程主机需要安装;
    VS2008

    二、生成DataContext cs文件
    DbMetal.exe -provider=MySql -database:your_db -server:your_server -user:root -password:your_pass -namespace:namespace -code:filename.cs -sprocs
    //注,名称空间是mysqllinq,-sprocs一定要

    出现了以下错误:

    DbMetal: Could not load databaseConnectionType type 'MySql.Data.MySqlClient.MySqlConnection, MySql.Data'.  Try using the --with-dbconnection=TYPE option.
    解决方法是添加MySql.Data.dll文件到DBMetal.exe所在目录下

    三、将文件DataContext cs放到项目文件中
    注意:cs文件放在项目的首层,比如App_Code中,或者内库中

    using DbLinq.Linq;
    using DbLinq.Linq.Mapping;
    (如果不是放在App_Code中,在此添加引用)


    四、在VS 2008中新建类项目DALMySQL,并添加引用


    DbLinq.dll;
    DbLinq.MySql.dll;
    MySql.Data.dll;
    //上面三个在DbLinq-0.18uild中可以找到。
    System.Data.Linq.dll;
    //在C:Program FilesReference AssembliesMicrosoftFrameworkv3.5System.Data.Linq.dll
    //这是一要引用!!!
    五、添加Web_App项目,添加对项目DALMySQL的引用

    六、在aspx.cs页面中添加引用:


    using MySql.Data;
    using MySql.Data.MySqlClient;
    using mysqllinq;//DataContext cs文件的名字空间

    //省略

      1.  
        using System;
      2.  
        using System.Web;
      3.  
        using System.Web.UI;
      4.  
        using DbLinq;
      5.  
        using DbLinq.MySql;
      6.  
        using MySql.Data;
      7.  
        using MySql.Data.MySqlClient;
      8.  
        using System.Linq;
      9.  
         
      10.  
        //主意看我有哪些引用!
      11.  
         
      12.  
         
      13.  
        namespace DBLinqTest
      14.  
        {
      15.  
         
      16.  
         
      17.  
        public partial class Default : System.Web.UI.Page
      18.  
        {
      19.  
         
      20.  
        public virtual void button1Clicked (object sender, EventArgs args)
      21.  
        {
      22.  
        string connStr = @"server=localhost;database=DB1;user=AAA;pwd=123456;port=3306;";
      23.  
         
      24.  
        MySqlConnection conn = new MySqlConnection (connStr);
      25.  
        Db1 db1 = new Db1 (conn);
      26.  
        var data = from a in db1.Test1
      27.  
        select a;
      28.  
        foreach (var d in data) {
      29.  
        Response.Write (d.ID + " " + d.Name);
      30.  
        }
      31.  
        button1.Text = "You clicked me";
      32.  
        }
      33.  
        }
      34.  
        https://blog.csdn.net/feihu_guest/article/details/7346948
  • 相关阅读:
    深入浅出Vue.js(四) 整体流程
    深入浅出Vue.js(三) 模板编译
    实现strStr()--indexOf()方法
    Z字形变换
    最长回文子串
    删除数组中不符合条件的值
    整数反转
    寻找两个正序数组的中位数
    gorm 关系一对一,一对多,多对多查询
    gorm 如何对字段进行comment注释?
  • 原文地址:https://www.cnblogs.com/xihong2014/p/10691831.html
Copyright © 2011-2022 走看看