小编use*_*821的帖子

在运行时设置实体框架连接字符串

我从AdventureWorks数据库生成了实体模型; 现在我想删除app.config中的连接字符串并在运行时设置它.在Model1.Context.cs文件中,我将构造函数设置为

public AdventureWorksEntities(string str)
        : base("name=AdventureWorksEntities")
    {
        this.Database.Connection.ConnectionString = str;
    }
Run Code Online (Sandbox Code Playgroud)

并在program.cs文件中

EntityConnectionStringBuilder ecsb = new EntityConnectionStringBuilder();
        ecsb.Metadata = @"res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl";
        ecsb.Provider = @"System.Data.SqlClient";
        ecsb.ProviderConnectionString =
            @"data source=.\sqlexpress;initial catalog=AdventureWorks;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework";

        using (var ent = new AdventureWorksEntities(ecsb.ConnectionString))
        {
            Console.WriteLine(ent.Database.Connection.ConnectionString);
            var add = ent.Addresses;
            foreach (var ad in add)
            {
                Console.WriteLine(ad.City);
            }


        }
        Console.ReadKey();
Run Code Online (Sandbox Code Playgroud)

现在它说没有找到元数据关键字.如何在运行时为entityframework设置连接字符串?

c# connection-string entity-framework-4

1
推荐指数
1
解决办法
8247
查看次数

标签 统计

c# ×1

connection-string ×1

entity-framework-4 ×1