C#如何从文本文件中设置SQL数据库连接字符串运行时 [英] C# how to set SQL database connection string runtime from text file

查看:70
本文介绍了C#如何从文本文件中设置SQL数据库连接字符串运行时的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

亲爱的所有

i使用实体框架获取表单应用程序并创建连接字符串然后将此连接导出到c:/ folder name / CN.txt为Server = CAVE; Database = IT_Manager; Trusted_Connection =真;我需要在加载登录表单时从文本文件中读取连接,如果文件夹,文件和有效连接存在则使用此连接运行app否则加载连接字符串表单以保存连接



我尝试过:



 // app config 

<的ConnectionStrings> 
< add name =GYM_AdminEntitiesconnectionString =metadata = res://*/Entities.Entities.csdl | res://*/Entities.Entities.ssdl | res://*/Entities.Entities .msl; provider = System.Data.SqlClient; provider connection
string =data source = CAVE; initial catalog = GYM_Admin; integrated security = True; MultipleActiveResultSets = True; App = EntityFramework
providerName = System.Data.EntityClient/>
< / connectionStrings>
// class
public SetConnection()
{
config =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
}


public string getconnectionstring(string key)
{
return config.ConnectionStrings.ConnectionStrings [key] .ConnectionString;
}


public void saveconnection(string key,string value)
{
config.ConnectionStrings.ConnectionStrings [key] .ConnectionString = value;
config.ConnectionStrings.ConnectionStrings [key] .ProviderName =
System.Data.EntityClient;
config.Save(ConfigurationSaveMode.Modified);
}
//代码
string txtcn = File.ReadAllText(@C:\ GYM Admin\CN.txt);
Controls.SetConnection conn = new Controls.SetConnection();
conn.saveconnection(GYM_AdminEntities,txtcn);

解决方案

这对你的应用来说有点矫枉过正,但它是我的方式:实例存储 - 一种简单的分享方式应用程序之间的配置数据 [ ^ ]



简单的方法是将一个设置字符串添加到您的应用程序并从Properties.Settings.Default加载它.MyConnectionString:在C#中使用设置 [

这是在本地配置中保存连接的最佳解决方案文件

使用相同的类(设置连接)





 conn.Open (); 
Controls.SetConnection con = new Controls.SetConnection();

con.saveconnection(Name,string.Format(@metadata = res://*/Entities.Entities.csdl | res://*/Entities.Entities.ssdl | res: //*/Entities.Entities.msl;provider=System.Data.SqlClient;provider connection string ={0}; integrated security = True; MultipleActiveResultSets = True; App = EntityFramework,ConnectionString));

Application.Restart();


dear all
i have win form application using entity framework and create a connection string then export this connection to c:/folder name/CN.txt as " Server =CAVE; Database = IT_Manager; Trusted_Connection = True ;" i need to read the connection from text file when load login form if folder , file and valid connection exist run app with this connection else load connection string form to save the connection

What I have tried:

//app config 

< connectionStrings>
     <add name="GYM_AdminEntities"  connectionString="metadata=res://*/Entities.Entities.csdl|res://*/Entities.Entities.ssdl|res://*/Entities.Entities.msl;provider=System.Data.SqlClient;provider connection 
     string="data source=CAVE;initial catalog=GYM_Admin;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework""
    providerName="System.Data.EntityClient" />
  </connectionStrings>
// class
public SetConnection()
        {
            config = 
               ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        }


        public string getconnectionstring(string key)
        {
            return config.ConnectionStrings.ConnectionStrings[key].ConnectionString;
        }


        public void saveconnection(string key , string value)
        {
            config.ConnectionStrings.ConnectionStrings[key].ConnectionString = value;
            config.ConnectionStrings.ConnectionStrings[key].ProviderName = 
            "System.Data.EntityClient";
            config.Save(ConfigurationSaveMode.Modified);
        }
//   code
       string txtcn = File.ReadAllText(@"C:\GYM Admin\CN.txt");
                    Controls.SetConnection conn = new Controls.SetConnection();
                    conn.saveconnection("GYM_AdminEntities", txtcn);

解决方案

This is a bit overkill for your application, but it's the way I do it: Instance Storage - A Simple Way to Share Configuration Data among Applications[^]

The simple way is just to add a Settings string to your app and load it from Properties.Settings.Default.MyConnectionString: Using Settings in C#[^]


this is the best solution to save the connection in local config file
using the same class (set connection )


          conn.Open();
      Controls.SetConnection con = new Controls.SetConnection();

con.saveconnection("Name",string.Format(@"metadata=res://*/Entities.Entities.csdl|res://*/Entities.Entities.ssdl|res://*/Entities.Entities.msl;provider=System.Data.SqlClient;provider connection string=""{0}; integrated security = True; MultipleActiveResultSets = True; App = EntityFramework""", ConnectionString));

      Application.Restart();


这篇关于C#如何从文本文件中设置SQL数据库连接字符串运行时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆