NuDeploy.Core.Services.Packaging.Build.SolutionBuilder.Build C# (CSharp) Метод

Build() публичный Метод

public Build ( string solutionPath, string buildConfiguration, string>.IEnumerable additionalBuildProperties ) : IServiceResult
solutionPath string
buildConfiguration string
additionalBuildProperties string>.IEnumerable
Результат IServiceResult
        public IServiceResult Build(string solutionPath, string buildConfiguration, IEnumerable<KeyValuePair<string, string>> additionalBuildProperties)
        {
            if (string.IsNullOrWhiteSpace(solutionPath))
            {
                throw new ArgumentException("solutionPath");
            }

            if (string.IsNullOrWhiteSpace(buildConfiguration))
            {
                throw new ArgumentException("buildConfiguration");
            }

            if (additionalBuildProperties == null)
            {
                throw new ArgumentNullException("additionalBuildProperties");
            }

            // prepare build parameters
            var buildProperties = this.buildPropertyProvider.GetBuildProperties(
                buildConfiguration, DefaultTargetPlatform, this.buildFolder, additionalBuildProperties.ToList());

            // prepare build request
            var buildLogger = new ConsoleLogger();
            var buildRequestData = new BuildRequestData(solutionPath, buildProperties, null, new[] { DefaultBuildTarget }, null);
            var buildParameters = new BuildParameters { Loggers = new ILogger[] { buildLogger } };

            // build
            BuildResult result = BuildManager.DefaultBuildManager.Build(buildParameters, buildRequestData);

            if (result.OverallResult == BuildResultCode.Success)
            {
                return new SuccessResult(
                    Resources.SolutionBuilder.SuccessMessageTemplate,
                    solutionPath,
                    buildConfiguration,
                    string.Join(",", buildProperties.Select(p => p.Key + "=" + p.Value)));
            }

            return new FailureResult(
                Resources.SolutionBuilder.FailureMessageTemplate,
                solutionPath,
                buildConfiguration,
                string.Join(",", buildProperties.Select(p => p.Key + "=" + p.Value)));
        }

Usage Example

Пример #1
0
        public void Build_BuildConfigurationIsInvalid_ArgumentExceptionIsThrown(string buildConfiguration)
        {
            // Arrange
            string solutionPath = @"C:\dev\some-project\project.sln";
            var additionalBuildProperties = new Dictionary<string, string>();

            var buildFolderPathProvider = new Mock<IBuildFolderPathProvider>();
            var buildParameterProvider = new Mock<IBuildPropertyProvider>();
            var solutionBuilder = new SolutionBuilder(buildFolderPathProvider.Object, buildParameterProvider.Object);

            // Act
            solutionBuilder.Build(solutionPath, buildConfiguration, additionalBuildProperties);
        }
All Usage Examples Of NuDeploy.Core.Services.Packaging.Build.SolutionBuilder::Build