是否可以使用Microsoft的XML文档转换,在MSBuild之外准备web.configs?我想使用PowerShell进行这些转换,而无需通过MSBuild引擎运行它.如果Microsoft使用标准XSLT,那么在PowerShell中很容易做到.据我所知,我必须使用他们需要构建引擎的C:\ Program Files(x86)\ MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.Tasks.dll.谢谢
处理集中配置,应用程序设置和连接字符串,用于多个解决方案,同时还切换到从命令行使用msdeploy来部署Web应用程序.理想情况下,我希望构建一次包,并在将包部署到每个环境时获取最新配置.我需要一些关于最佳方法的建议.
谢谢
我已经找到了如何设置应用程序池和默认值
<parameter name="applicationPool" defaultValue="MyDefaultValue" >
<parameterEntry kind="DeploymentObjectAttribute" scope="application"
match="application/@applicationPool" />
</parameter>
Run Code Online (Sandbox Code Playgroud)
有谁知道如何设置"IIS Web应用程序名称"?它在SetParameters.xml文件中生成为
<setParameter name="IIS Web Application Name" value="Default Web Site/MySite_deploy" />
Run Code Online (Sandbox Code Playgroud)
我可以覆盖SetParameters.xml文件,但我宁愿在Parameters.xml文件中设置它,但我找不到parameterEntry类型.
谢谢
我希望能够远程进入系统并在那里压缩或解压缩文件,并在完成时获得过程信号.启动过程使用-wait参数从PowerShell同步运行7z.exe.当我尝试将它与invoke-command结合使用以远程运行相同的命令时,它不支持wait参数,我相信它会杀死进程,因为它快速返回并且从不生成zip文件.
[string]$sevenZip = "C:\Program Files\7-zip\7z.exe"
[Array]$arguments = "a", $zipFilename, $dirToZip;
"Starting $sevenZip with $arguments"
Start-Process $sevenZip "$arguments" -Wait
#blocks and waits for zip file to complete
Run Code Online (Sandbox Code Playgroud)
我最初尝试过PSCX write-zip和expand-archive,但后者与64位.NET 4.0配置不兼容.所以现在我试图通过命令行调用64位7z.exe.我没有收到任何错误.PowerShell将作业报告为运行状态,然后完成,并且不会生成任何zip文件.
Invoke-Command -ComputerName localhost -FilePath 'C:\Scripts\ZipIt.ps1' -ArgumentList 'd:\TestFolder','d:\promote\TestFile.7z' -AsJob
Run Code Online (Sandbox Code Playgroud)
感谢任何帮助或指针.
谢谢,格雷戈里
将AutoMapper与json.net JObject一起使用时,我遇到了反射错误
public class Source
{
public string Key { get; set; }
public JObject Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是目标
public class Target
{
public string Key { get; set; }
public JObject Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是映射
public class SourceTargetMapping
{
public static void IntializeMapping()
{
Mapper.CreateMap<Target, Source>()
.ForMember(g => g.Value, op => op.ResolveUsing(s => s.Value));
Mapper.CreateMap<Source, Target>()
.ForMember(s => s.Value, op => op.ResolveUsing(g => g.Value));
}
}
public static class SourceTargetMappingExtensions
{
public static …Run Code Online (Sandbox Code Playgroud)