如何在不检索整个文档的情况下在 Mongo(C# 驱动程序)中修改嵌套属性(数组)中的单个元素?
public class Element
{
public int Value {get; set;}
public string Name {get; set;}
}
public class Document
{
public Element [] Elements {get; set;}
}
Run Code Online (Sandbox Code Playgroud)
在示例中,我想在单个查询中找到名称为“Car”的元素并将其值设置为 4。
给出汇总后展开的以下数据:
let workOrders = [
{customer: 'A', job: 'Apple', chemical: {name: 'Chem A', quantity: 500}},
{customer: 'A', job: 'Banana', chemical: {name: 'Chem B', quantity: 400}},
{customer: 'A', job: 'Banana', chemical: {name: 'Chem C', quantity: 300}},
{customer: 'B', job: 'Cherry', chemical: {name: 'Chem A', quantity: 200}}
]
Run Code Online (Sandbox Code Playgroud)
所需输出:
[
{
customer: 'A',
jobs: [
{
job: 'Apple',
chemicals: [
{name: 'Chem A', quantity: 500}
]
},
{
job: 'Banana',
chemicals: [
{name: 'Chem B', quantity: 400},
{name: 'Chem C', quantity: 300} …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 Application Insights Analytics 和 Log Analytics Query Language处理我的Application Insights数据。我想要的是 C# 中的 switch 语句或 F# 中的模式匹配。所以伪代码是这样的:
requests
| where timestamp > now(-1d)
| project endpoint = (switch(name){ {case: "POST /api/jobs/search", then: "Jobs Search"}, {case: "POST /api/offices/search", then: "Office Search"} ...})
Run Code Online (Sandbox Code Playgroud)
或者也许有某种解决方法来定义一个类似字典的结构,然后在我的查询中使用该结构
有任何想法吗 ?
我正在构建我的 Azure 逻辑应用程序工作流,它应该检查一些条件并按照 Powershell 运行:
Stop-AzureWebsiteJob -Name MyWebsite -JobName MyWebJob
Start-AzureWebsiteJob -Name MyWebsite -JobName MyWebJob -JobType Continuous
Run Code Online (Sandbox Code Playgroud)
问题是:在 Azure 逻辑应用程序中调用此类脚本的最简单方法是什么?Powershell 似乎没有内置块/连接器,所以我想知道有哪些可能性。或者,使用类似的操作运行 az CLI 命令可能会更容易
我有以下 mongodb 文档架构;
{
"_id" : ObjectId("5c9d34ff781318afb9e8ab43"),
"name" : "Name",
"slug" : "slug",
"services" : {
"subservice" : {
"id" : NumberInt(37030)
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后我将我的课程定义为;
public class MainModel
{
public ObjectId Id { get; set; }
[BsonElement("name")]
public string Name { get; set; }
[BsonElement("slug")]
public string Slug { get; set; }
[BsonElement("services")]
public ServicesDef Services { get; set; }
public class ServicesDef
{
[BsonElement("subservice")]
public SubServiceDef SubService{ get; set; }
public class SubServiceDef
{
[BsonElement("id")]
public int Id …Run Code Online (Sandbox Code Playgroud) 我有一个包含7主题的集合。
6信用值为3
1信用值为 的主体6。
我必须找到学分值超过 的科目总数6。
我如何让它打印0?
db.Subject.aggregate([{$match:{"subject.prerequisite":{$gt:6}}},
{$count:"Total"}])
Run Code Online (Sandbox Code Playgroud)
预期的:Total : 0
实际的:Nothing
我有一个具有以下结构的流星集合。这实际上来自 的一个Meteor-files集合ostrio。
{
"_id" : "HsXoZ6bxkx5kMcJtm",
"name" : "trees.jpg",
"meta" : { "artist_id" : "QkmYdsZsMmRzqTg58" , "artist": "some name"},
"mime-type" : "audio/mp3",
"userId" : "QkmYdsZsMmRzqTg58",
"_collectionName" : "images"
}
Run Code Online (Sandbox Code Playgroud)
我定义一个出版物
Meteor.publish('files.artist', function publishUserImages(){
return Images.find({meta: {artist_id: this.userId}).cursor;
});
Run Code Online (Sandbox Code Playgroud)
我想过滤键meta,返回所有带有artist_id. 我当前的过滤器将仅获取meta具有确切值的那些图像{artist_id: "QkmYdsZsMmRzqTg58"}。过滤器不会返回上面显示的项目,因为它的meta值有一个额外的键artist
如何构建合适的过滤器?
我正在学习 Node 和 mongo,目前正在开发一个简单的服务器,该服务器只会从 mongodb 中获取 10 个随机文档,并在收到 get 请求时将它们作为响应发送。我的下一个目标是创建一个页面,该页面将在 html 页面中显示这 10 条记录,并具有一些基本样式。该页面还有一个“下一步”按钮,可以从数据库中获取另外 10 条随机记录。问题是如何确保在此过程中不会两次提取相同的记录?
嗨,我有以下模型:
{
"_id" : ObjectId("5d65a9c2f62b0d437bedc87b"),
"name" : "dsadasdsadsadsa",
"companyBases" : [
{
"vehicles" : [
{
"_id": "unique1"
},
{
"_id":"unique1"
},
{
"_id":"unique2"
}
],
"_id" : ObjectId("5d65aef598b4734a8d3994b1"),
"name" : "Tech Parking 22",
"__v" : 0
},
{
"vehicles" : [
{
"_id": "unique1"
},
{
"_id":"unique2"
}
],
"_id" : ObjectId("5d65aef598b4734a8d3994b3"),
"name" : "Tech Parking 23",
"__v" : 0
}
],
"__v" : 0
}
Run Code Online (Sandbox Code Playgroud)
我想计算“ companyBases”数组中“ vehicles”数组中的不同对象(“ vehicles”中的“ _id”是不同值)。
在上面的示例中,计数模式应为:
“ unique1”-3, “ unique2”-2
因此,它为整个数组“ companyBases”在“车辆”数组中提供了2个唯一的对象。 …
我有两种字符串的文字联合类型,并希望它们成为对象的可能的键和值。
export type AlarmKeyword = 'R1' | 'R2';
export type ResourceTypes = 'nktw' | 'rtw' | 'nef' | 'rth' | 'hlf' | 'dlk';
Run Code Online (Sandbox Code Playgroud)
新类型如下所示:
export type AlarmKeywordObject = {
[P in AlarmKeyword]: { [T in ResourceTypes]: number };
};
Run Code Online (Sandbox Code Playgroud)
但 TS 现在抱怨这段代码:
{
R1: {
rtw: 1,
},
}
Run Code Online (Sandbox Code Playgroud)
输入 '{ rtw: 数字; }' 缺少类型 '{ nktw: number; 的以下属性;rtw:数字;内夫: 数量;rth:数字;hlf:数字;dlk:数字;}':nktw、nef、rth、hlf、dlk
我如何确保密钥是可选的而不是所有密钥都是必需的?
谢谢你!
mongodb ×7
azure ×2
c# ×2
azure-cli ×1
meteor ×1
node.js ×1
nosql ×1
powershell ×1
typescript ×1
union-types ×1