代码之家  ›  专栏  ›  技术社区  ›  Chris McCall

如何从自定义MSBuild任务访问BeforeBuild事件上的app.config?

  •  0
  • Chris McCall  · 技术社区  · 15 年前

    我编写了一个自定义MSBuild任务,以从MSSQL存储过程生成模型代码。我希望对我的任务使用与应用程序相同的配置来连接到数据库。我创建了一个如下所示的配置部分

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <configSections>
        <section name="CoreDataConnections" type="CoreData.ConfigHandler, CoreData"></section>
      </configSections>
      <CoreDataConnections>
      <Connection Name="BillingDB" ConnectionString="Data Source=SERVER0;Initial Catalog=DB0;persist security info=False;user id=user;password=password;packet size=4096"/>
      <Connection Name="ValidationDB" ConnectionString="data source=SERVER1;initial catalog=DB1;persist security info=False;user id=user;password=password;packet size=4096"/>
      </CoreDataConnections>
    </configuration>
    

    并通过我的应用程序全天访问它,如下所示:

    Dictionary<string,string> Connections = (Dictionary<string,string>)ConfigurationSettings.GetConfig("CoreDataConnections");
    

    GetConfig 返回 null

    2 回复  |  直到 14 年前
        1
  •  1
  •   si618    15 年前

    更感兴趣的是,比如在MSBuild属性中指定app.config文件

    我就是这么做的。很好。

        2
  •  0
  •   Sayed Ibrahim Hashimi    15 年前

    ConfigurationManager.OpenExeConfiguration 方法?您可能应该将该路径从调用它的MSBuild脚本传递到任务中。