相关疑难解决方法(0)

如何以及为什么要设置C#构建机器?

我正在与C#项目上的一个小型(4人)开发团队合作.我已经提议建立一个构建机器,它将对项目进行夜间构建和测试,因为我知道这是一件好事.麻烦的是,我们这里没有足够的预算,所以我必须证明费用是合理的.所以我想知道:

  • 我需要什么样的工具/许可证?现在,我们使用Visual Studio和Smart Assembly来构建,并使用Perforce进行源代码控制.我是否需要其他东西,或者是否有相当于运行自动脚本的cron作业?
  • 究竟是什么让我得到了,除了表明构建破坏了?我应该在这个脚本运行的解决方案(sln文件)中设置测试项目,这样我可以测试特定的功能吗?目前我们有两次这样的测试,因为我们没有时间(或坦白地说,经验)来进行良好的单元测试.
  • 我需要什么样的硬件?
  • 一旦构建完成并经过测试,将这种构建放在ftp站点上还是有其他方式进行内部访问是一种常见的做法吗?我们的想法是,这台机器做构建,我们都去了,但可以使调试版本,如果我们不得不这样做.
  • 我们应该多久进行一次这种构建?
  • 如何管理空间?如果我们制作夜间版本,我们是否应该保留所有旧版本,或者在大约一周左右后开始抛弃它们?
  • 还有什么我没看到的吗?

    我意识到这是一个非常大的话题,我刚刚开始.我在这里找不到这个问题的副本,如果那里有一本书我应该得到,请告诉我.

    编辑:我终于开始工作了!Hudson非常棒,FxCop表明我们认为实现的一些功能实际上是不完整的.我们还必须将安装程序类型从Old-And-Busted vdproj更改为New Hotness WiX.

    基本上,对于那些正在关注的人,如果你可以从命令行运行你的构建,那么你可以把它放到哈德森.通过MSBuild从命令行运行构建本身就是一个很有用的练习,因为它会强制你的工具是最新的.

  • c# build-automation continuous-integration hudson build

    144
    推荐指数
    6
    解决办法
    4万
    查看次数

    如何在连接字符串上使用Web.Config变换?

    在我当前的项目中,我有一些对本地开发机器有效的连接字符串:

    <configuration>
      <connectionStrings>
        <add name="ApplicationServices"
             connectionString="Data Source=localhost;Initial Catalog=MyDB;Integrated Security=SSPI"
      </connectionStrings>
    ....
    </configuration>
    
    Run Code Online (Sandbox Code Playgroud)

    我如何使用Web.Config转换从此表达式转换为对我们的生产服务器有效的表达式?生产服务器看起来像:

    <configuration>
      <connectionStrings>
        <add name="ApplicationServices"
             connectionString="Data Source=IPAddress,Port;Initial Catalog=SomeOtherDB;User ID=TopSecretUsername;Password=SecurePassword"
      </connectionStrings>
    ....
    </configuration>
    
    Run Code Online (Sandbox Code Playgroud)

    语法对我来说并不明显,而且我完全没有在它上面浏览页面.

    c# connection-string web-config asp.net-mvc-3

    34
    推荐指数
    2
    解决办法
    4万
    查看次数