【问题标题】:Asp.net - Trouble with updating LINQ ClassesAsp.net - 更新 LINQ 类的问题
【发布时间】:2009-08-18 14:29:17
【问题描述】:

我们刚刚在数据库表中创建了一个新字段,因此将其删除并重新插入了 LINQ 类中的表。新的数据库字段出现在图中的 LINQ 类中。但是,当我们使用该字段时,我们会收到一条错误消息,指出该表不包含该字段的定义。

关于我们如何解决这个问题的任何想法?谢谢!

更新:更新 LINQ to SQL 类需要哪些步骤?也许我们做错了什么。

更新 2:我们的问题图片 - LINQ - http://img99.imageshack.us/img99/6033/usertable.png |代码 - http://img43.imageshack.us/img43/5145/linqerror.png

【问题讨论】:

  • 有许多可能的原因,取决于:字段名称(或者更好的是,表定义)? Linq to SQL 还是 Linq to Entities?
  • 该字段名是一个 Gender shortint 字段。这是一个 Linq to SQL 类。我们遇到的另一个问题是,当我们删除一个表并重新插入它时,设计器文件似乎被删除了——有什么想法吗?感谢您的帮助!
  • 听起来 codegen 失败了 - 您在更改后保存 dbml 文件时是否偶然收到“自定义工具 mslinqtosqlgenerator 失败...”错误?如果是这样,请查看此线程:social.msdn.microsoft.com/Forums/en-US/linqtosql/thread/…
  • 不 - 我们没有收到任何可见的错误:[ - 但我会查看您提供的链接。

标签: asp.net linq linq-to-sql


【解决方案1】:

使用设计器中的属性或关闭 Studio 并检查 XML,检查映射文档的表定义端。我推荐设计师。

确保字段名称与数据库中的字段名称匹配。
我在使用 Linq2Entities 时遇到了一些保留关键字的问题,我建议您避免在名称中使用保留字(即使 [] 处理它们)。

【讨论】:

  • 我以前做过。在源代码管理中将它们与以前的版本进行比较有时也很有用。
【解决方案2】:

虽然这没有必要回答您的问题,但它可能有助于解决问题 - 我一直是 Huagati 的 LINQ to SQL 和实体工具的忠实粉丝。仅重新同步方面就为我节省了很多时间,50 美元(标准版)IMO 非常值得。

http://www.huagati.com/dbmltools/

希望对你有帮助...

编辑:

为了更新 LINQ to SQL 类,您可以手动进行 (bllurgh),也可以将它们从设计器中删除,然后从服务器资源管理器的数据连接节点中拖放它们。

【讨论】:

  • 我不确定这是否适用于视觉 Web 开发人员 - 我通过电子邮件发送了支持。
  • @stringo0 - 如果 Visual Web Developer 是 Visual Studio 的“速成版”版本之一,那么不幸的是那些不支持加载项... ...加载项不幸需要 VS 标准/pro/team...
  • 嗨,我在尝试删除表并重新添加时遇到以下错误 - 我们的新字段似乎没有被识别:[:'dataClass.aspnet_User' 不包含可以找到“性别”的定义并且没有扩展方法“性别”接受“dataClass.aspnet_User”类型的第一个参数(您是否缺少 using 指令或程序集引用?)
  • 您是否尝试过将其从设计器中删除并重新添加(确保该字段实际可用并在表格中/在表格中准备就绪)?
【解决方案3】:

我必须删除整个 LINQ 类,重新创建它并重新添加表才能解决我的问题。简单地删除单个表并重新添加它,或者删除类中的所有表并重新添加它们也不起作用。

【讨论】:

    【解决方案4】:

    我遇到了完全相同的问题,但我发现在对象关系设计器中删除有问题的表并重新添加它们(并重新添加关联)解决了这个问题。我不必删除整个 DataContext,也不必删除任何仍在正常工作的表。我建议在做任何更激烈的事情之前先尝试一下。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多