该FileVersionInfo课程有一个IsPreRelease属性.
有没有办法通过AssemblyInfo或我的.NET程序集项目中的其他东西来获取该属性在生成的.dll文件中返回true?
我将azure-pipelines.yml从一个项目复制到另一个项目,但它不会构建.我确保一切都是一样的,并且两侧都安装了相同的扩展......
旧的构建仍然有效,但新的构建不会:
这是YAML:
# https://aka.ms/yaml
name: $(Build.DefinitionName)_$(GitVersion_InformationalVersion)
pr:
- master
pool:
vmImage: 'VS2017-Win2016'
steps:
- task: gittools.gitversion.gitversion-task.GitVersion@3
displayName: GitVersion
- powershell: .\bootstrap.ps1
displayName: 'Restore pre-requisites'
- powershell: .\build.ps1 -OutputDirectory $(Build.ArtifactStagingDirectory)\$(Build.DefinitionName) -SemVer $(GitVersion.InformationalVersion) -Verbose
displayName: 'Run build script'
- task: richardfennellBM.BM-VSTS-PesterRunner-Task.Pester-Task.Pester@8
displayName: 'Pester Tests'
inputs:
additionalModulePath: '$(Build.ArtifactStagingDirectory)'
CodeCoverageFolder: '$(Build.ArtifactStagingDirectory)'
resultsFile: '$(Common.TestResultsDirectory)\Test-$(Build.DefinitionName)_$(Build.BuildNumber).xml'
CodeCoverageOutputFile: '$(Common.TestResultsDirectory)\Coverage-$(Build.DefinitionName)_$(Build.BuildNumber).xml'
- task: PublishTestResults@2
displayName: 'Publish Test Results'
condition: always()
inputs:
testRunner: NUnit
searchFolder: '$(Common.TestResultsDirectory)'
- task: PublishCodeCoverageResults@1
displayName: 'Publish code coverage'
inputs:
summaryFileLocation: '$(Common.TestResultsDirectory)\Coverage-$(Build.DefinitionName)_$(Build.BuildNumber).xml'
- task: PublishBuildArtifacts@1
displayName: …Run Code Online (Sandbox Code Playgroud) 在我的MVC3站点中,我避免使用新的ValidateInput属性设置requestValidationMode ="2.0",但现在我正在尝试切换到WIF进行身份验证,当STS重定向回我的站点时,我得到了异常,因为WSFederationAuthenticationModule.IsSignInResponse正在调用Request.Form而不是Request.Unvalidated().Form...有没有办法处理这个没有请求VALalidationMode ="2.0"(我真的不想这样做).
这是堆栈跟踪,所以你可以看到我的意思.我的Controller的方法永远不会被调用.
[HttpRequestValidationException (0x80004005): A potentially dangerous Request.Form value was detected from the client (wresult="<trust:RequestSecuri...").]
System.Web.HttpRequest.ValidateString(String value, String collectionKey, RequestValidationSource requestCollection) +8755668
System.Web.HttpRequest.ValidateNameValueCollection(NameValueCollection nvc, RequestValidationSource requestCollection) +122
System.Web.HttpRequest.get_Form() +114
Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.IsSignInResponse(HttpRequest request) +21
Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.CanReadSignInResponse(HttpRequest request, Boolean onPage) +121
Microsoft.IdentityModel.Web.WSFederationAuthenticationModule.OnAuthenticateRequest(Object sender, EventArgs args) +78
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +148
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +75
Run Code Online (Sandbox Code Playgroud) 我们有一个Asp.Net网络应用程序,我们试图伪部署到一个文件夹,我开始认为微软是疯了 - 为什么让WAP做这么难"本地文件系统"部署为MSBuild的一部分?
我可以用这个构建:
msbuild .\SubSite.csproj "/p:Platform=AnyCPU;Configuration=Release" /t:Package
Run Code Online (Sandbox Code Playgroud)
并获得一个很好的package.zip,我可以部署到一个网站...
但是,我的解决方案中有两个项目,我需要在发布之前将它们合并,所以我想将这两个软件包部署到一个文件夹中,然后重新打包该文件夹.尽管文档 TechNet上,相反,它似乎并不可能做到:
msdeploy -verb:sync -source:package=.\SubSite.zip -dest:contentPath=.\Www\SubSite
Run Code Online (Sandbox Code Playgroud)
因为你得到错误:
源(sitemanifest)和目标(contentPath)与给定操作不兼容.
有没有人建议我如何在不手动从"PackageTmp"文件夹中复制文件的情况下将两个站点相互部署?我的意思是,我知道我可以跳过压缩包并手动复制文件来执行此操作,但我不满意必须创建自定义目标,并且没有其他方法可以找到这样做应该内置的东西.
我不能让这个用于16个字符或更长的字体名称,但控制台本身显然没有这个限制.有没有人知道一种程序化的方式来设置与内置的"Lucida Sans打字机"或开源"Fira Code Retina"一起使用的字体?
我从各个地方复制了PInvoke代码,特别是PowerShell控制台主机和Microsoft Docs
请注意,CONSOLE_FONT_INFOEX和SetCurrentConsoleFontEx的相关文档没有谈到这一点,结构将字体定义为大小为32的WCHAR字段...
还要注意什么不是限制,而是是从控制台对话框的限制,是字体必须有真正的类型列出,而且必须是真正的固定宽度.使用此API,您可以选择"Times New Roman"等可变宽度字体...
但是,在API中,名称中必须少于 16个字符 - 这是控制台本身没有的限制,可能是API中的错误而不是我的下面的代码
using System;
using System.Runtime.InteropServices;
public static class ConsoleHelper
{
private const int FixedWidthTrueType = 54;
private const int StandardOutputHandle = -11;
[DllImport("kernel32.dll", SetLastError = true)]
internal static extern IntPtr GetStdHandle(int nStdHandle);
[return: MarshalAs(UnmanagedType.Bool)]
[DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Unicode)]
internal static extern bool SetCurrentConsoleFontEx(IntPtr hConsoleOutput, bool MaximumWindow, ref FontInfo ConsoleCurrentFontEx);
[return: MarshalAs(UnmanagedType.Bool)] …Run Code Online (Sandbox Code Playgroud) 我有一个WPF应用程序可以捕捉到屏幕边缘(我只是设置窗口的.Top或.Left,如果你在屏幕边缘的20个像素内),但我最近添加了WPF SDK团队提供的一些代码"混乱"与窗口铬合金,虽然它工作得很好(截图),它导致"snapto"意外地移动窗口(例如:当它应该直接向下捕捉到底部时它跳到左边)
我把它缩小到他们对WM_NCCALCSIZE的处理......这真的很奇怪,因为他们基本上什么都不做,他们只是说他们处理它,然后返回0.
根据WM_NCCALCSIZE的文档,这应该只会导致整个窗口被视为客户端(没有非客户端边缘),但不知何故,这也意味着每当我的快照代码将窗口移动到屏幕底部时它也向左移动大约134个像素......(移动到其他边缘有类似的副作用),只要我按住鼠标拖动它,它就会从它应该的位置来回闪烁.如果我对WM_NCCALCSIZE处理进行注释,则snap-to以它应该的方式工作(但表单看起来不正确).
我已经尝试了WM_NCCALCSIZE处理程序中的所有功能,但是我无法阻止它向左跳...当然,只有在窗口大小发生变化时才会调用WM_NCCALCSIZE,所以我不明白它是如何导致的这首先是!
PS如果你想真正看到代码,它已经在CodePlex上,在两个文件中,查找_HandleNCCalcSize和OnWindowLocationChanged