• EntityFramework 中的链接研究初探


    很多人用EF的默认链接工厂:System.Data.Entity.Infrastructure.LocalDbConnectionFactory

    然后我一开始就不习惯,然后研究了一下,截图如下

    然后就是


    public System.Data.Common.DbConnection CreateConnection(string nameOrConnectionString)
    System.Data.Entity.Infrastructure.LocalDbConnectionFactory 的成员

    摘要:
    基于给定的数据库名称或连接字符串为 SQL Server LocalDb 创建连接。如果给定的字符串包含“=”字符,则将其视为一个完整的连接字符串,否则仅将其视为数据库名称。

    参数:
    nameOrConnectionString: 数据库名称或连接字符串。

    返回值:
    已初始化的 DbConnection。

    这也是为什么可以用【name=数据库链接名】的意思。

    很多人基本都在用Model frist和db frist时用自己命名的实体Dbcontext名

    接着是


    SqlConnectionFactory中成员BaseConnectionString

    public string BaseConnectionString { get; }
    System.Data.Entity.Infrastructure.SqlConnectionFactory 的成员

    摘要:
    要用于“初始目录”之外的数据库的选项的连接字符串。在调用 CreateConnection 时,将基于数据库名称在此字符串前预置“初始目录”。默认值为“Data Source=.SQLEXPRESS; Integrated Security=True; MultipleActiveResultSets=True”。

    返回值:
    连接字符串。

    LocalDbConnectionFactory中的成员BaseConnectionString

    public string BaseConnectionString { get; }
    System.Data.Entity.Infrastructure.LocalDbConnectionFactory 的成员

    摘要:
    用于“初始目录”、“数据源”和“AttachDbFilename”之外的数据库选项的连接字符串。调用 CreateConnection 时,将基于数据库名称在此字符串前添加“初始目录”和“AttachDbFilename”。将基于 LocalDbVersion 参数设置“数据源”。默认值为“Integrated Security=True; MultipleActiveResultSets=True;”。

    两者的默认值都是不一样的。


    我用的EF4.4版本,发现链接工厂有三个,SqlConnectionFactory,LocalDbConnectionFactory,SqlCeConnectionFactory。最后一个是针对小型数据库SqlCE,Access等。


    这样就在自动在数据库创建成功了,不在很多文章中的默认数据库(坑啊)。

  • 相关阅读:
    C#中Bitmap类实现对图像操作的一些方法
    C# GDI+ 文字操作
    C#中使用GDI+实现复杂打印
    【Python基础】json.dumps()和json.loads()、json.dump()和json.load()的区分
    【Python爬虫】selenium基础用法
    【Python爬虫】PyQuery解析库
    【Python爬虫】BeautifulSoup 解析库
    【Python爬虫】正则表达式与re模块
    【Python爬虫】Requests库的基本使用
    【Python基础】*args,**args的详细用法
  • 原文地址:https://www.cnblogs.com/RainbowInTheSky/p/4478354.html
Copyright © 2020-2023  润新知