mcpField
S
syncfusion-dotnet-calculate

syncfusion-dotnet-calculate

github.com/syncfusion开发275 次安装1 周前更新
代码仓库

关于 syncfusion-dotnet-calculate

此技能为 Syncfusion dotnet Calculate 生成公式解析与求值的 C# 示例,面向使用该库的开发者。它依据参考文档生成代码,并要求在写入文件前取得同意。

主要功能

  1. 01公式解析与求值示例
  2. 02自定义函数注册示例
  3. 03CalcEngine 与 CalcQuickBase 指引
  4. 04仅依据参考文档生成代码
  5. 05修改文件前征求同意

适用场景

  1. 01创建公式计算示例
  2. 02添加自定义公式函数
  3. 03集成带单元格引用的计算

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/syncfusion/document-sdk-skills --skill syncfusion-dotnet-calculate

安装后在 Claude Code 中输入/syncfusion-dotnet-calculate确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
references/
calcengine.md
calcquickbase.md
customfunction.md
getting-started.md
icalcdata.md
namedranges.md
operators.md
overview.md
parse-compute.md
performance.md
xlsio.md

详细介绍

Syncfusion dotnet Calculate

概述

使用 Syncfusion dotnet Calculate 解析和计算公式。它会生成 C# 代码,以实现交互式公式计算功能,包括表达式解析、依赖项解析,以及计算值的运行时求值。

快速入门示例

示例 1

用户:“展示如何使用 CalcEngine 解析和计算公式”

**结果:**生成用于解析和计算公式的 C# 代码

示例 2

用户:“向计算控件添加自定义公式,以比较两个字符串”

**结果:**生成用于创建自定义函数的 C# 代码


为用户的项目生成 C# 代码 (默认)

触发关键词:“代码”、“代码片段”、“如何编写”、“Program.cs”、“展示”、“样例”、“代码示例”、“为……生成代码”、“NuGet”、“添加到项目”、“集成”、“实现”、“用法示例”、“API 示例”、“计算公式”、“求表达式的值”、“计算结果”、“解析公式”、“注册变量”、“跨工作表公式”、“使用 CalcQuickBase”、“使用 CalcEngine”、“使用 ICalcData”、“使用单元格引用进行计算”、“自动计算”、“刷新计算”、“重置键”、“格式化结果”、“区域设置”、“自定义函数”、“用户定义公式”、“注册函数”、“LibraryFunctions”、“ExcelLikeComputations”、“迭代计算”、“暂停计算”、“支持的公式”、“列出公式”、“ParseAndCompute”、“parseAndComputeFormula”。

步骤 1 — 分析用户请求
  1. 阅读用户的请求并提取功能关键词。
  2. 如果存在相关的 reference/*.md 文件,则仅使用这些文件作为生成代码的事实来源。
  3. 如果没有匹配的参考文件,则使用 references/getting-started.md 中的示例生成代码。
步骤 2 — 同意与目标位置确认(执行任何文件操作前必须询问)

在生成或写入任何内容之前,询问用户:

I'm ready to generate your Syncfusion Calculate sample.

Where should I place it?
1) Create a new Form file in the skill's "output" folder (recommended for quick tryout)
2) Add or modify an existing file in your project (please provide the full file path; choose append or replace)
3) Say "Just show me the code" to get the snippet here without modifying any files.
规则
  • 在用户选择一个选项或说“只展示代码”之前,不要继续。
  • 如果用户拒绝修改文件:
    • 仅在聊天中展示 C# 代码
    • 不创建或更改任何文件
  • **仅适用于选项 2:**生成代码之前,检查项目是否具备 references/getting-started.md 中的前提条件(“前提条件和设置要求”部分)。如果缺少,则征求用户同意并添加。
步骤 3 — 生成代码(严格遵循仅参考文档的规则)
  • 始终使用 getting-started.md 中“最小代码”部分的示例代码结构,作为创建 Calculate 的基础模板。
  • 严格按照 references/*.md(例如 getting-started.md、Xlsio.md)中展示的方式使用 API。
  • 切勿臆造 API 或猜测其行为。
  • 如果任何参考文件都未记录该功能,则告知用户该功能不可用。
步骤 4 — 应用更改(仅在获得同意后)
选项 A — 在技能文件夹中创建新文件
  • 在技能根目录下创建名为 output/ 的文件夹(如果尚不存在)。

  • 默认文件名:CalculateSample.cs

  • 如果文件已存在,请询问: “名为 ‘CalculateSample.cs’ 的文件已存在。要覆盖、追加,还是使用其他名称?”

  • 等待用户决定后再写入任何内容。

  • 写入生成的 C# 内容。

    选项 B — 修改用户项目中的文件
  1. 询问: “要修改哪个文件?请提供完整文件路径(例如:D:\Project\program.cs)”
  2. 等待用户明确确认。
  3. 如果用户只回复“2”(选项编号)而未提供路径 → 再次询问。
  4. 切勿猜测或推断文件路径。
  5. 确认后,应用所请求的更改(覆盖或追加)。
选项 C — 仅展示代码
  • 在聊天中显示生成的 C# 代码。
  • 不要创建或修改任何文件。

代码参考

所有模板和功能片段都位于 references/*.md 中。每个文件都包含一个聚焦的代码片段,Agent 会在生成示例时将这些片段组合起来。

流程:始终从 references/getting-started.md(Prerequisites and Setup Requirements 部分)开始,然后合并匹配的功能片段。如果没有匹配的功能关键词,则仅返回基本示例。

文件内容
getting-started.md先决条件、NuGet 包设置、Program.cs 配置、CalcQuickBase 和 ICalcData 的最简代码示例、跨工作表引用、区域性设置、快速参考表
calcquickbase.mdParseAndCompute 方法、使用方括号表示法注册变量、计算表达式和内置公式、用于自动重新计算的 AutoCalc、RefreshAllCalculations、ResetKeys 方法、关键属性和方法、基于索引器的访问
icalcdata.mdICalcData 接口实现、SetValueRowCol/GetValueRowCol 方法、WireParentObject 方法、ValueChanged 事件、完整实现示例、与 CalcEngine 集成、跨工作表引用、数据网格集成
calcengine.mdParseFormula 方法、ComputeFormula 方法、ParseAndComputeFormula 方法、使用 RegisterGridAsSheet 和 CreateSheetFamilyID 的跨工作表引用、区域/区域性设置(ParseDecimalSeparator、ParseArgumentSeparator)、错误字符串、按类别列出的受支持内置公式
customfunction.mdLibraryFunction 委托、自定义函数创建、向 CalcEngine 注册、示例(CustomMin、CustomMax、ApplyDiscount、CalculateGrade、CompoundInterest)、RemoveFunction 方法、管理库函数、错误处理、最佳实践
xlsio.mdXlsIO 集成、ExcelEngine 初始化、启用/禁用工作表计算(EnableSheetCalculations/DisableSheetCalculations)、在运行时设置和计算值、批量更新期间暂停计算(CalculatingSuspended)、CalculatedValue 属性、表格公式、完整工作流、错误处理
overview.md400 多个预定义函数及其类别、支持的环境和平台、非 UI 组件架构、支持的公式类型、函数类别参考、典型用例、与 XlsIO 集成
parse-compute.mdParseFormula 方法和 RPN 转换、用于基于堆栈求值的 ComputeFormula 方法、ParseAndComputeFormula 组合方法、运算符优先级和解析顺序、错误处理和错误字符串、格式化计算结果(小数、百分比、货币)、性能优化
operators.md公式运算符及其优先级、计算中支持的运算符
namedranges.md对命名范围的支持,以简化复杂公式
performance.md性能优化技巧和最佳实践

规则

  1. 仅使用参考片段

    • 生成的代码必须仅来源于 references/ 下的 Markdown 文件
    • 不得编造、猜测或加入 references/*.md 中未出现的任何属性、事件、API 方法、组件名称或参数
  2. 未经许可不得修改文件

    • 未经用户明确选择和确认,不得在用户工作区中创建或修改文件/文件夹。
  3. 不支持的功能处理

    • 如果用户请求的功能在 references/*.md 中没有对应片段,请回复: That feature is not currently supported by the Syncfusion Calculate Library.
    • 仅当存在对应片段时,才建议最接近的受支持功能
    • 明确列出不支持的项目,且不得为其合成代码
  4. 写入前验证

    • 写入前再次验证,确保所有代码块均源自 references/*.md 文件
    • 如果验证失败,请停止并告知用户

评论

支持 Markdown