简体   繁体   English

如何使用 ConfigurationManager 将 Unity3d 中的连接字符串值传递到类库

[英]How to pass connectionstring value from Unity3d to a classlibrary with ConfigurationManager

I created a class named "DB" in a ClassLibrary named "DBLayer" to connect a database named "LinguisticsDB".我在名为“DBLayer”的 ClassLibrary 中创建了一个名为“DB”的 class,以连接名为“LinguisticsDB”的数据库。 When I implement this ClassLibrary into another project, it can connect its App.config file via "connectionStrings" tag.当我将此 ClassLibrary 实现到另一个项目中时,它可以通过“connectionStrings”标签连接其 App.config 文件。 But I need to access my ClassLibrary from Unity3d help to some kind of file like App.config.但我需要从 Unity3d 帮助访问我的 ClassLibrary,以访问 App.config 之类的文件。 I need a step-by-step guide.我需要一个分步指南。 On the other hand, I do not know where should I import App.config file?另一方面,我不知道应该在哪里导入 App.config 文件?

My DB class into DBLayer:我的数据库 class 进入 DBLayer:

        public static string connectionString = ConfigurationManager.ConnectionStrings["LinguisticsDB"].ConnectionString;
        static SqlConnection connection = new SqlConnection(connectionString);
        static SqlDataAdapter sqlDataAdapter;

        public static DataSet GetData(string query)
        {
            if (connection.State == ConnectionState.Closed)
            {
                connection.Open();
            }
            DataSet dataSet = new DataSet();
            sqlDataAdapter = new SqlDataAdapter(query, connection);
            sqlDataAdapter.Fill(dataSet);
            connection.Close();
            return dataSet;
        }

My App.config:我的 App.config:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
    </startup>
  <connectionStrings>
    <add name="LinguisticsDB" connectionString="Data Source=DESKTOP-NORA1IP; Initial Catalog=Linguistics; Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>
</configuration>

I tried to import App.config file into my Unity project inside Scripts folder;我尝试将 App.config 文件导入到 Scripts 文件夹中的 Unity 项目中; but it did not work.但它没有用。

I solved my problem using static connection string.我使用 static 连接字符串解决了我的问题。 This is awful but it worked.这很糟糕,但它奏效了。 I changed this我改变了这个

public static string connectionString = ConfigurationManager.ConnectionStrings["LinguisticsDB"].ConnectionString;

to this对此

public static string connectionString = @"Data Source=.; Initial Catalog=myDatabase; Integrated Security=True;"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM