嵌入式ConfigFile在Exe文件中

时间:2017-08-03 13:05:57

标签: c# app-config

我想创建app.config文件数据的应用程序,如connectionString等...嵌入在exe文件中

当应用程序发布.exe文件后创建exe文件并删除app.config文件后  如何在没有app.config文件的情况下运行应用程序

如何在.exe文件中嵌入app.config文件。

我的配置文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>       
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
  </startup>
  <connectionStrings>
    <add name="DataBaseEntities" connectionString="metadata=res://*/Model.DataBase.csdl|res://*/Model.DataBase.ssdl|res://*/Model.DataBase.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=127.0.0.1;initial catalog=DataBase;persist security info=True;user id=abc;password=123;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>
  <entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
    </providers>
  </entityFramework>
</configuration>

我的计划:

    public static void Main(string[] args)
    { 
        using (DataBaseEntities entities = new DataBaseEntities())
        {
            List<User> user= objEntities.UserTable.ToList();              
        }

        Console.ReadKey();
    }

atfer删除app.config文件运行应用程序并按原样检索数据。

2 个答案:

答案 0 :(得分:5)

您必须在app.config的Property中将app.config的Build Action设置为“Embedded Resource”。它将作为bin文件夹中的文件消失,并将包含在* .exe文件

答案 1 :(得分:0)

App.config是config - 它可以配置。如果您不想使用它,则将值硬编码为常量(和/或使用默认值的应用程序设置)并使用代码进行配置。