You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

自定义Visual Studio XSD生成规则 实现外键及级联删除正确生成

解决方案

一、GUI操作方式(无需额外工具,直接在VS2019中调整)

  • 拖拽完数据表生成XSD后,在设计视图中选中自动生成的关系对象(两个表之间的连线),右键选择「编辑关系」
  • 在弹出的关系编辑窗口中,找到外键约束选项,勾选「创建外键约束」,不要仅保留「仅关系」选项
  • 级联删除配置在同一窗口的「更新规则」「删除规则」下拉框中选择Cascade,确认保存后重新生成XSD即可
  • 注意:如果需要下次拖拽自动生效,需要先在源数据库中确保外键的ON DELETE CASCADE配置已经正确开启,VS会优先读取数据库元数据,只要数据库侧外键配置正确,勾选一次后后续拖拽生成会默认保留该配置

二、命令行生成方式(适合批量操作场景)

  • 你可以直接调用.NET Framework自带的xsd.exe工具生成强类型数据集,要让生成的XSD自动识别外键并保留级联删除,需要额外添加/fks参数,完整命令示例:
xsd.exe /d /fks /l:CS /conn:"Server=你的服务器地址;Database=你的库名;Integrated Security=True" /out:输出目录路径
  • /fks参数的作用就是强制工具将数据库中的外键约束生成为XSD中的外键对象,而不是普通关系对象,同时会自动读取数据库中的级联删除、级联更新配置写入生成的文件

验证方式

生成完成后可以直接打开XSD的XML源码,查找<xs:keyref>节点,只要该节点的refer属性指向主表的主键节点,且子节点<xs:annotation>下包含<xs:appinfo>的Cascade配置说明,就说明生成正确

内容的提问来源于stack exchange,提问作者user3688731

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 18:36:04