我正在使用Diagnostic ToolsVisual Studio 2015调试SharePoint Web部件.
我附加了几个w3wp.exe进程,窗口显示以下消息:
Multiple processes are being debugged, but this window is only showing data for w3wp.exe (PID: 1208).
那很好,但我如何改变它显示的过程?
debugging sharepoint process visual-studio debug-diagnostic-tool
我是HttpClient httpClient从课外注射的。
在我的类中,我正在创建一个新的 HttpClientHandlervar handler = new HttpClientHandler()并设置其值。
我需要链接HttpClientHandler到现有的,HttpClient就像使用构造函数一样:new HttpClient(handler)
是否可以?我尝试在其中寻找HttpClientHandler财产HttpClient,但它不存在。还有其他办法吗?
假设我在 Azure 上有 3 个环境:Dev、Test 和 Prod。我有相同的管道来为每个环境构建和部署资源和代码,但有两个不同之处:
这种情况的正确方法是什么?因为我想到了至少 3 个,没有一个是完美的:
选项 1:我想我可以在 Azure DevOps 上创建单个管道(由 3 个分支中的任何一个触发),每个环境有 3 个阶段,并为每个阶段添加一个根据源分支运行的条件,如下所示:
condition: eq(variables['Build.SourceBranch'], 'refs/heads/a-branch-name')
并在每个阶段引用不同的变量。但这会在每个阶段引入代码重复 - 在添加或修改步骤时,我必须记住编辑 3 个阶段 - 不可取。
选项 2:在我的存储库中创建 3 个单独的 YAML 文件,每个文件都具有指定的触发器分支并引用相同的变量名称,然后在 Azure DevOps 上创建 3 个不同的管道,每个管道具有不同的变量值。但这也会引入代码重复。
选项 3:build-and-deploy.yaml使用其中定义的步骤创建 1 个文件作为模板,然后创建另外 3 个引用该模板的 YAML 文件,每个文件在每个 Azure Pipeline 中都有不同的触发器分支和不同的变量值,如下所示:
trigger:
branches:
include:
- a-branch-name
steps:
- template: build-and-deploy.yaml
parameters:
parameterName1: $(parameterValue1)
parameterName2: $(parameterValue2)
Run Code Online (Sandbox Code Playgroud)
这似乎是最好的选择,但我没有看到它在示例中的任何地方使用过,所以也许我只是不知道它的缺点,如果有的话。
yaml continuous-deployment azure-devops azure-pipelines azure-pipelines-yaml
我有以下要求:
Windows计算机名称的长度不能超过15个字符,完全是数字或包含以下字符:`〜!@#$%^&*()= + _ [] {} \ | ; :。'“,<> /?。
我想创建一个RegEx来验证给定的计算机名称。
我可以看到,唯一允许的字符是-,到目前为止,我有这个:
/^[a-zA-Z0-9-]{1,15}$/
它匹配除“ 不是完全数字 ”部分以外的几乎所有约束。
如何在RegEx中添加最后一个约束?
这有效:https : //codesandbox.io/s/stoic-beaver-ucydi
使用 React Hook Form 重构后,这不起作用:https ://codesandbox.io/s/objective-cloud-bkunr?file=/src/ControlledTextField.tsx
我最近使用Fluent UI构建了一个有状态的 React 表单,并将字段包装在自定义组件中。
我已经包含了一个功能,当您在站点标题字段中键入时,会生成站点 URL 字段中的值(在我的情况下,它只是复制字段值并删除对 URL 无效的字符)。
(简化的)代码运行良好,如下所示:
import * as React from 'react';
import {useState} from 'react';
import { PrimaryButton } from 'office-ui-fabric-react';
import SiteTitleField from '../../../common/formFields/SiteTitleField';
import SiteUrlField from '../../../common/formFields/SiteUrlField';
export default function MyForm(props) {
const urlPrefix: string = "https://" + window.location.hostname + "/sites/";
const [siteTitle, setSiteTitle] = useState();
const [titleErrorMessage, setTitleErrorMessage] = useState('');
const [siteUrl, …Run Code Online (Sandbox Code Playgroud) .net ×1
azure-devops ×1
c# ×1
debugging ×1
httpclient ×1
process ×1
react-hooks ×1
reactjs ×1
regex ×1
sharepoint ×1
yaml ×1
yup ×1