我的一个表在 SQL Server 数据库中有 JSON 数据。我需要向现有 JSON 添加新属性。
表中 JSON 数据示例:
{ "FirstName": "John" }
Run Code Online (Sandbox Code Playgroud)
我需要的是向此列添加另一个属性。
{ "FirstName": "Jonh","City":"Pune" }
Run Code Online (Sandbox Code Playgroud)
我尝试使用 JSON_MODIFY 函数,但它抛出错误。这仅适用于数组吗?
我试过的代码:
update <TableName>
set <jsonColumnName> = JSON_MODIFY(<jsonColumnName>, '$.', JSON_QUERY(N'{ "City":"Pune" }'))
where UserId = 1
Run Code Online (Sandbox Code Playgroud)
错误信息:
JSON 路径格式不正确。意外字符 '.' 位于位置 2。
我需要使用 MongoDB 中的运算符执行分组$max
。我找出了在 MongoDB 数据库中运行的查询,但无法使用 C# 编写相同的查询。
db.getCollection('Employee').aggregate(
[
{$unwind : "$Projects"},
{
"$group" : {
"_id" : "$EmpId",
"LastUpdated" : {"$max" : "$Projects.LastUpdated"}
}
}
]);
Run Code Online (Sandbox Code Playgroud)
下面的 C# 代码出现错误:
“项目”不是有效的财产。
db.getCollection('Employee').aggregate(
[
{$unwind : "$Projects"},
{
"$group" : {
"_id" : "$EmpId",
"LastUpdated" : {"$max" : "$Projects.LastUpdated"}
}
}
]);
Run Code Online (Sandbox Code Playgroud) gitlab UI 中是否有任何方法可以拒绝合并请求,因为代码有问题?如果不是,跟踪这个的正确方法是什么。
我是UI测试用例的新手。我想做的是验证我的角度模板中的按钮文本。
以下是我的角度模板文件中可用的按钮控件
<button type="button" class="btn btn-primary" (click)="staticModal.show()">Show/Hide</button>
<button type="button" class="btn btn-primary" (click)="filterModal.show()">Filter</button>
Run Code Online (Sandbox Code Playgroud)
以下是我的角度测试
it('should have button with text show/hide',()=>{
const debug=fixture.debugElement;
const native=debug.nativeElement;
const buttonElem=native.querySelector('button:contains("show/hide")');
console.log(native);
expect(buttonElem.textContent).toContain('Show/Hide');
});
Run Code Online (Sandbox Code Playgroud)
因为我的模板中有两个没有任何ID且具有相同类的按钮。我正在尝试找到带有文本值的右键,但是它失败,并显示以下错误“ SyntaxError:无法在'Element'上执行'querySelector':'button:contains(“ show / hide”)'不是有效的选择器。”
什么是测试此方案的正确方法。
编辑:我使用茉莉与业力进行测试。
我需要使用 node-cron 调用一个函数,并想为此编写一个单元测试用例。单元测试用例应该能够测试函数是否正在根据模式进行调用。
下面是我的代码
const server = (module.exports = {
cronJob: null,
scheduledJob: function(pattern) {
server.cronJob = cron.schedule(pattern, () => {
server.run();
});
},
run: function() {
console.log("run called");
},
});
Run Code Online (Sandbox Code Playgroud)
describe("entry point test suite", () => {
it("should call function every second", (done) => {
const pattern = "* * * * * *";
let spy = sinon.spy(server, "run");
server.scheduledJob(pattern);
server.cronJob.Start();
// to do wait for 3 sencond
server.cronJob.Stop();
expect(spy.callCount).eq(3);
});
});
Run Code Online (Sandbox Code Playgroud)
两个问题:
除了setTimeout
我必须等待 3 秒的选项之外,cron 作业将按照模式每秒运行 …
我最近开始研究 nodejs。我创建了一个简单的 nodejs api(带有 express),它连接到 SQL 服务器数据库并返回结果。在我的开发之后,我遇到了如何托管这个节点 js api 的挑战。我决定在 IIS 上托管我的 api。我遇到了不同的错误,最后我能够让它工作。感谢互联网上的不同文章。以下是我遵循的步骤。可能这可以帮助任何新尝试在 Windows IIS 中托管 nodejs 的人。
我有一个NodeJs应用程序.目前我正在使用team city来构建和部署此应用程序.现在我想在部署之前运行单元测试用例.我用Chai的Mocha框架来编写测试用例.我没有在团队城市看到Mocha或Node Js的任何跑步者类型.
我知道需要在teamcity服务器上安装一些插件.
有谁知道插件是什么以及我需要遵循哪些步骤?
我有一个表,其中有一个包含JSON数据的列。每列中的每个JSON对象都有许多属性。我有另一个表,它的属性名称不是全部,而是很少。
我需要做的是编写一个查询以从表中选择JSON数据,但是JSON不应该包含第二个表中的属性。例如,下面是jSON表。
Id Person
1 {FirstName:"test", LastName: "test", Email: "test@test.abc"}
2 {FirstName:"syx", LastName: "ave", Email: "yyeyd@test.abc"}
Run Code Online (Sandbox Code Playgroud)
具有属性名称的第二个表:
ExclusionId ExcludedProperty
1 Email
Run Code Online (Sandbox Code Playgroud)
查询应将这两个表连接起来,输出应为
Id Person
1 {FirstName:"test", LastName: "test"}
2 {FirstName:"syx", LastName: "ave"}
Run Code Online (Sandbox Code Playgroud)