c# - 将存储过程添加到 DBML 不会生成 *.designer.cs 代码

标签 c# asp.net visual-studio-2008 linq-to-sql

我正在尝试使用 Visual Studio 2008 向我的 Asp.Net 网站添加一个新的存储过程,这是我前段时间所做的,但这不会在 *.designer.cs 中生成任何代码,当我尝试调用 SP,我只是收到一个未定义/未找到的错误。

这是我到目前为止所做的:

  1. 确保我拥有对 MyApp.dbmlMyApp.dbml.layoutMyApp.designer.css 的读/写权限<
  2. 打开 DBML(以“图形”模式)
  3. 刷新服务器浏览器中的SP列表
  4. 将目标 SP 拖放到 DBML 上
  5. 保存
  6. 建立网站

DBML 中的 XML 是使用结果的每一列的正确类型创建的,但在 designer.cs 中绝对没有创建任何内容。

  • 我检查了一下,并没有像 this person 那样创建"new"的 designer.cs。 .
  • 我尝试使用“运行自定义工具”(as suggested here)删除和不删除 MyApp.designer.cs,但它什么都没做

有人知道问题出在哪里吗?我错过了什么吗?

最佳答案

由于其他方法似乎都不起作用,我采用了 Pleun 的想法,效果非常好:

  1. 使用全新的 DBML 创建一个新的空 Asp.Net 网站
  2. 将我的 SP 导入到这个新的 DBML 中
  3. 将生成的代码从新的空项目复制到我的旧项目(这些代码部分很容易被发现,因为它们是唯一提到我的 SP 的代码)
    1. MyApp.dbml 中的 XML>
    2. MyApp.designer.cs 中的 Csharp(调用 SP 的方法 + 具有 SP 结果访问器的分部类)
  4. 构建我的“旧”项目

事实上,我必须关闭并重新打开 VS 才能完全工作。

关于c# - 将存储过程添加到 DBML 不会生成 *.designer.cs 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24827797/

相关文章:

c++ - 如何在 Windows 7 上查看 .dmp 文件?

vb.net - 有没有一种简单的方法可以在 VB.NET 中随机化列表?

c# - Exchange Server 2007 传输代理问题

c# - 将 Web 表单 aspx 页面添加到 WCF 项目

c# - 使用 MySQL 数据库创建 ADO.Net 实体数据模型?

c# - 如何使用 c# 在 asp.net 中恢复能够下载的文件 -> 最佳方式(也适用于大文件)

c# - 如何将两个数组打印到一个页面,用逗号分隔?

c# - 为什么 DateTime.MinValue 不能用作 C# 中的可选参数

c# - 格式化字符串字面量

c# - 功能 'interpolated strings' 在 C# 5 中不可用。请使用语言版本 6 或更高版本。