我正在尝试使用 Visual Studio 2008 向我的 Asp.Net 网站添加一个新的存储过程,这是我前段时间所做的,但这不会在 *.designer.cs 中生成任何代码,当我尝试调用 SP,我只是收到一个未定义/未找到的错误。
这是我到目前为止所做的:
- 确保我拥有对
MyApp.dbml
、MyApp.dbml.layout
和MyApp.designer.css
的读/写权限< - 打开 DBML(以“图形”模式)
- 刷新服务器浏览器中的SP列表
- 将目标 SP 拖放到 DBML 上
- 保存
- 建立网站
DBML 中的 XML 是使用结果的每一列的正确类型创建的,但在 designer.cs 中绝对没有创建任何内容。
- 我检查了一下,并没有像 this person 那样创建"new"的 designer.cs。 .
- 我尝试使用“运行自定义工具”(as suggested here)删除和不删除 MyApp.designer.cs,但它什么都没做
有人知道问题出在哪里吗?我错过了什么吗?
最佳答案
由于其他方法似乎都不起作用,我采用了 Pleun 的想法,效果非常好:
- 使用全新的 DBML 创建一个新的空 Asp.Net 网站
- 将我的 SP 导入到这个新的 DBML 中
- 将生成的代码从新的空项目复制到我的旧项目(这些代码部分很容易被发现,因为它们是唯一提到我的 SP 的代码)
MyApp.dbml
中的 XML>MyApp.designer.cs
中的 Csharp(调用 SP 的方法 + 具有 SP 结果访问器的分部类)
- 构建我的“旧”项目
事实上,我必须关闭并重新打开 VS 才能完全工作。
关于c# - 将存储过程添加到 DBML 不会生成 *.designer.cs 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24827797/