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
  • 相关阅读:
    PDF文件中的Form保存问题
    Understanding IP Fragmentation
    tcp ip guide IPsec IKE
    Windows安全事件日志中的事件编号与描述
    Cisco PIX fix up and Juniper firewall FTP ALG
    很好的IPSec介绍,详细解释了IKE协商的2个阶段的作用
    virtualbox 下运行Ubuntu 8.10的分辨率和guest additions的问题。
    Fixing the ‘Do you want to display nonsecure items’ message
    windows xp 开始菜单里面所有项目右键不起作用。
    HP backup and recovery manager
  • 原文地址:https://www.cnblogs.com/xihong2014/p/10691831.html
Copyright © 2011-2022 走看看