zhouda1fu-ncp-mom-integration-event-instructions.ocm.json json Copy{
"ocm": "1",
"id": "zhouda1fu-ncp-mom-integration-event-instructions",
"kind": "skill",
"name": "integration-event",
"description": "namespace Ncp.Mom.Web.Application.IntegrationEvents;",
"publisher": "zhouda1fu",
"version": "1.0.0",
"capabilities": {
"domains": [
"general"
],
"tags": [
"skill-md",
"github-instructions"
],
"languages": [
"en"
]
},
"quality_prior": 0.6,
"examples": [
"namespace Ncp.Mom.Web.Application.IntegrationEvents;"
],
"primary": false,
"metadata": {
"source": {
"provider": "github-instructions",
"repository": "https://github.com/zhouda1fu/Ncp.Mom",
"path": ".github/instructions/integration-event.instructions.md",
"ref": "e1b21357f1465657d15f8dff1d774d1496659af1",
"url": "https://github.com/zhouda1fu/Ncp.Mom/blob/e1b21357f1465657d15f8dff1d774d1496659af1/.github/instructions/integration-event.instructions.md",
"key": "zhouda1fu/Ncp.Mom/.github/instructions/integration-event.instructions.md"
},
"applies_to": "src/Ncp.Mom.Web/Application/IntegrationEvents/*.cs"
},
"instructions": "# 集成事件开发指南\n\n## 开发原则\n\n### 必须\n\n- **事件定义**:\n - 必须使用 `record` 类型。\n - 包含跨服务通信所需的关键数据。\n - 使用过去式动词描述已发生的事情。\n - 事件应该是不可变的。\n- **复杂类型**:如果需要复杂类型作为属性,则在同文件中定义,同样必须使用 `record` 类型。\n\n### 必须不要\n\n- **引用聚合**:不允许引用聚合。\n- **敏感信息**:避免包含敏感或过于详细的内部信息。\n\n## 文件命名规则\n\n- 类文件应放置在 `src/Ncp.Mom.Web/Application/IntegrationEvents/` 目录下。\n- 文件名格式为 `{Entity}{Action}IntegrationEvent.cs`。\n- 每个集成事件一个文件。\n\n## 代码示例\n\n**文件**: `src/Ncp.Mom.Web/Application/IntegrationEvents/UserCreatedIntegrationEvent.cs`\n\n```csharp\nusing NetCorePal.Extensions.Domain;\nusing Ncp.Mom.Domain.AggregatesModel.UserAggregate;\n\nnamespace Ncp.Mom.Web.App",
"cost": {
"context_tokens": 189
}
}