发现App.config文件跟Settings.settings.cs文件的内容有重复

发现App.config文件和Settings.settings.cs文件的内容有重复。
例如,我建立了一个数据源,那么在Settings.setting.cs里面就会多出这样的一段代码:

        [global::System.Configuration.ApplicationScopedSettingAttribute()]
        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
        [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
        [global::System.Configuration.DefaultSettingValueAttribute("Data Source=(local);Initial Catalog=my;Integrated Security=True")]
        public string myConnectionString {
            get {
                return ((string)(this["myConnectionString"]));
            }
        }

而在App.config文件里面多出了下面这些内容:

  <configSections>
    <!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
    <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
  </configSections>
  <connectionStrings>
    <add name="WindowsFormsApplication2.Properties.Settings.myConnectionString"
      connectionString="Data Source=(local);Initial Catalog=my;Integrated Security=True"
      providerName="System.Data.SqlClient" />
  </connectionStrings>

问题是,在<connectionStrings>当中,既然<add>已经在name特性中,引用了上述定义的myConnectionString,那么为什么还要把Settings.settings当中myConnectionString的特性再次写一遍到connectionString这个特性里面?

感觉相同的内容:

"Data Source=(local);Initial Catalog=my;Integrated Security=True"

在两个文件里面都声明了一遍啊,这算是一种重复吗,还是说这么保存两份相同的逻辑是有意义的?
还请指教!
------解决方案--------------------
都是配置文件吧,app.config是在应用时可方便修改配置,一个是应用前要做好配置,感觉是这样。
------解决方案--------------------
Settings.setting.cs里标记的是默认值
App.config里储存的是实际值
------解决方案--------------------
引用:
Quote: 引用:

Settings.setting.cs里标记的是默认值
App.config里储存的是实际值


有一个问题,既然这两个文件都是IDE自动生成,那么岂不是这两个值永远相等?
那么又如何区分所谓的默认值和实际值呢? 

可是在connectionString这个xml tag里面,你说的默认值是它的xml attribute,而你说的实际值是他的xml text,你的意思是说xml text如果为空,那么就用它的xml tag来指定连接字符串?

在app.config里储存的就是实际值,不管它是attribute还是text。默认值是直接嵌入程序集里并且是难以修改的,提供这个值是为app.config丢失时提供备选。