首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何将连接字符串中的提供者名称添加到上下文文件中?

如何将连接字符串中的提供者名称添加到上下文文件中?
EN

Stack Overflow用户
提问于 2013-08-25 15:46:17
回答 1查看 49.6K关注 0票数 13

我使用的是实体框架5代码优先的方法。这是我的上下文文件:

代码语言:javascript
复制
using IMS.Domain.Inventory;
using IMS.Domain.Security;
using IMS.Domain.StoredProcedures;
using System;
using System.Collections.Generic;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
using System.Data.Objects;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace IMS.Domain.DBContext
{
    public class IMSDBContext : DbContext
    {
        public DbSet<ModuleAccounting> ModuleAccountings { get; set; }
        public DbSet<ModuleInfo> ModuleInfos { get; set; }
        public DbSet<ModuleType> ModuleTypes { get; set; }
        public DbSet<UserAccounting> UserAccountings { get; set; }
        public DbSet<UserGroup> UserGroups { get; set; }
        public DbSet<UserInfo> UserInfos { get; set; }


    //
    // set a connection string

    public IMSDBContext()  // Constructor of the Context
    {
        this.Database.Connection.ConnectionString =
            "Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=IMSDB;Data Source=.\\SQLExpress";
    }
}

}

在这里,我在构造函数中添加了连接字符串。但是有没有办法将“提供者名称”添加到连接字符串中呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-25 21:50:33

在db上下文中硬编码连接字符串有什么特殊的原因吗?通常,它应该存储在配置文件中。您可以在配置文件中指定提供程序,并引用上下文中的连接字符串。这将会解决你的问题。

代码语言:javascript
复制
 public MyDbContext()
        : base("Name=MyDbContext")
    {
    }

在您的配置文件中

代码语言:javascript
复制
<connectionStrings>
    <add name="MyDbContext" connectionString="data source=.\sqlexpress;initial catalog=YourDbName;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient"/>
  </connectionStrings>
票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18426807

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档