在新计算机上编译ASP.NET网站时无法生成代码错误

时间:2013-07-29 01:40:58

标签: asp.net visual-studio-2012 compiler-errors mysql-connector asp.net-4.5

我通过复制网站的整个文件夹将我的ASP.NET 4.5网站移动到新计算机。当我尝试在Visual Studio 2012中的新计算机上构建网站时(我在第一台计算机上的版本相同),我会收到一些警告和错误。

错误:

Failed to generate code. Exception of type 'System.Data.Design.InternalException' was thrown.   C:\Users\admin\Desktop\website_sample\App_Code\DataSet.xsd  

有21个 warnnings ,所有人都说“无法更新自动刷新参考”用于不同的dll文件。

当我尝试运行我的default.aspx页面(在第一台计算机上运行良好)时,我收到App_Code / DataSet.xsd文件的以下错误:

Failed to generate code. Exception of type 'System.Data.Design.InternalException' was thrown.

还有源错误:

Line 1:  <?xml version="1.0" encoding="utf-8"?>
Line 2:  <xs:schema id="DataSet" targetNamespace="http://tempuri.org/DataSet.xsd" xmlns:mstns="http://tempuri.org/DataSet.xsd" xmlns="http://tempuri.org/DataSet.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" xmlns:msprop="urn:schemas-microsoft-com:xml-msprop" attributeFormDefault="qualified" elementFormDefault="qualified">
Line 3:    <xs:annotation>

我正在使用MySQL .NET Connector,但我已经在新计算机上安装了它,以确保这不会导致错误。

我需要知道如何解决错误和警告。我最关心的是错误,因为它阻止我运行我今天需要运行的一些任务。提前谢谢。

我的假设是我使用了不同版本的.NET MySQL连接器,但我不是。

2 个答案:

答案 0 :(得分:4)

如果您最初通过从Visual Studio内部的数据库或服务器资源管理器中拖放来创建数据集,并且某些时候数据库引用不再有效(移动/删除数据库),则会导致此异常。< / p>

这是因为Visual Studio将连接字符串存储在XSD中。如果该连接字符串不再有效,则无法动态生成所需的适配器。要解决此问题,请更改XSD文件内的Connection节点上的ConnectionStringObject属性(不是在设计级别,而是在文本编辑器级别。)将其设置为指向数据集所对应的数据库的有效连接字符串,并且您是很高兴。

答案 1 :(得分:3)

如果您不再关心连接,可以改为删除Connection元素,留下一个空的Connections节点。

while(scan.hasNextLine()) { 
        String temp = scan.nextLine();
        if(temp.equals("*"))
            break;
        words.add(temp);
    }