• MySql For EF CodeFirst 例子


    由于业余项目中的一些问题,开始想了解EF  Code First 实现 Domain 。

    我用Mysql,网上多数Demo针对SqlServer举例。想套上MySql ,

    本来想这没什么的,但有一段时间尝试不成功,想查查网上资料本菜没有看到什么。

    当然Mysql Connector 6.6.2 发布还是有点小兴奋,就是Code First的一种方式

    在这个版本下测试通过了;

    当然不可能不是每种环境都OK的,我的是:

    VS2010 + Mysql5.5 + Connector 6.6.2 + EF 4.4

    demo代码主要是借来的。

    Demo过程:

    1、建立 Console 项目 SomeCodeFirst1;

    2、添加对 EF 的引用,我用 NuGet 安装;

    3、Program 文件里添加 

    ProductContext,
    Product,
    Category 类
        public class ProductContext : DbContext
        {
            public DbSet<Category> Categories { get; set; }
            public DbSet<Product> Products { get; set; }
        }
    
    
        public class Category
        {
            [Key]
            public int CategoryId { get; set; }
            public string Name { get; set; }
            public virtual ICollection<Product> Products { get; set; }
        }
    
        public class Product
        {
            [Key]
            public int ProductId { get; set; }
            public string Name { get; set; }
            public string CategoryId { get; set; }
            public virtual Category Category { get; set; }
        }

    4、APP.config 添加配置节:

    <connectionStrings>
    <add name="ProductContext" providerName="MySql.Data.MySqlClient" 
    connectionString="server=localhost;User Id=test;password=test;database=test;" />
    </connectionStrings>

    5、初步验证:

        class Program
        {
            static void Main(string[] args)
            {
                using (var db = new ProductContext())
                {
                    // Add a food category 
                    var food = new Category { Name = "Foods" };
                    db.Categories.Add(food);
                    int recordsAffected = db.SaveChanges();
                    Console.WriteLine("Saved {0} entities to the database, press any key to exit.", recordsAffected);
                    Console.ReadKey();
                }
            }
        }

    如果没有意外因该成功;

     demo下载

  • 相关阅读:
    [Linux]-配置多台机器的SSH相互信任
    [Linux]-常用代码块
    [Linux]-Shell编程与规范
    [Sqoop]-任务
    [Sqoop]-导入导出
    [Sqoop]-认识&部署
    [Hive]-函数篇
    Tomcat catalina.out日志使用log4j按天分割
    技术站点
    Linux监控命令
  • 原文地址:https://www.cnblogs.com/bikaqiou2000/p/MySql_For_EF_CodeFirst.html
Copyright © 2020-2023  润新知