我有这个 Azure 构建管道,它启动 VSTest 任务。它应该测试以“Unittest.csproj”结尾的所有项目,但应排除以“Common.Unittest.csproj”结尾的测试项目:
# my-azure-pipeline.yaml:
...
steps:
- task: VSTest@2
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: |
**/*Unittest.csproj
! **/*Common.Unittest.csproj
...
Run Code Online (Sandbox Code Playgroud)
这很好用。
由于我有几个类似的构建,我想提取一个构建模板 (myTemplate.yaml),它现在使用变量 $(testprojects) 作为值“testAssemblyVer2”:
# myTemplate.yaml
...
steps:
- task: VSTest@2
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: $(testProjects)
...
Run Code Online (Sandbox Code Playgroud)
现在我尝试像这样设置变量,但没有成功:
# my-azure-pipeline.yaml
...
variables:
- testProjects: |
**/FistUnittestProject.csproj
! **/SecondUnittestProject.csproj
extends:
template: myTemplate.yaml
...
Run Code Online (Sandbox Code Playgroud)
我想知道通过变量定义“多行事物”的正确方法是什么?
任何帮助表示赞赏。
我想对C#中的oracle数据库进行一些程序化的模式操作.因此,我在努力解决一些基本问题.
ddl sql语句位于脚本文件中.我不想使用sqlplus.exe,但我想在ODP.NET程序集(System.Oracle.DataAccess)中使用OracleCommand.这是我的脚本文件的示例:
script.sql:
DROP TABLE ABCDEF;
DROP TABLE GHIJKL;
Run Code Online (Sandbox Code Playgroud)
我想指出:
以下代码应该执行我的脚本:
var content = File.ReadAllText("script.sql");
using (var oracleConnection = new OracleConnection(_connectionString))
{
oracleConnection.Open();
using (var command = new OracleCommand(content) { Connection = oracleConnection })
{
command.CommandType = CommandType.Text;
command.ExecuteNonQuery();
}
}
Run Code Online (Sandbox Code Playgroud)
执行此代码,我确实得到一个oracle错误:
Oracle.DataAccess.Client.OracleException:ORA-00911:无效字符
我认为,这些陈述的格式可能存在一些问题.任何提示都表示赞赏.谢谢.
- -编辑 - -
以一种简单的方式总结我的需求:我搜索一种方法来执行任何sql/ddl脚本,该脚本可由SQL Plus执行,以编程方式使用C#.
对于配置了一个构建控制器的机器"A"上的TFS 2013服务器,我试图添加另一个位于另一台机器"B"上的构建代理.机器"B"上的新构建代理应由机器"A"的相同构建控制器控制.已安装机器"B"上的TFS 2013.
为实现此目的,在"构建配置"下的机器"A"的Team Foundation管理控制台中,我使用"新代理..."功能添加新代理.
问题是我无法更改"计算机名称",因为它已经显示出来.如何添加机器"B"的代理?
谢谢你的协助!
我无法确定运行 SpecFlow 的旧版本 2.2.0 需要哪个版本的 SpecFlow Visual Studio 插件
由于管理限制,我们不能使用 2.2.0 以外的任何其他 SpecFlow 版本
我已经尝试了几个旧版本的 VS 插件,但是使用我现有的代码(基于 SpecFlow 2.2.0),所有这些都会导致错误:
Error CS1029 #error: 'Version conflict - SpecFlow Visual Studio extension
attempted to use SpecFlow code-behind
generator 1.9, but project 'XXXXXXX' references SpecFlow 2.2.'
Run Code Online (Sandbox Code Playgroud)
我想我需要一些插件版本,它可以在 2.2 内部使用
我不能使用 SpecFlow.Tools.MsBuild.Generation 包,因为 2.2.0 尚不支持。
任何人都可以帮助我吗?SpecFlow Visual Studio 插件的发布历史可以在这里找到:
https://github.com/techtalk/SpecFlow.VisualStudio/releases
编辑
我使用 Visual Studio 2017 (15.9.6)
在“包”文件夹中有 SpecFlow-2.2.0 和 SpecFlow.MsTest-2.2.0。我删除了它们,删除了 nuget 包缓存并重建了解决方案。问题依然存在。