【问题标题】:"Type 'System.Data.SqlClient.SqlConnection' is not defined." in .Net Web Site“未定义类型‘System.Data.SqlClient.SqlConnection’。”在 .Net 网站中
【发布时间】:2015-03-21 15:31:42
【问题描述】:

我正在尝试让 .NET 网站在网络服务器上运行,虽然一切都在我的机器上本地设置和运行(使用 IISExpress),但当我部署到安装了 IIS 的 Windows Server 2008 服务器时,在尝试使用 SqlConnection 时,我最终会遇到编译错误:

编译器错误消息:BC30002:未定义类型“System.Data.SqlClient.SqlConnection”。

现在,我在源文件的开头有两个 import 语句,如下所示:

导入 System.Data.SqlClient

导入 System.Data

在编译警告中它列出了一个非常奇怪的错误:

警告:BC40056:导入“System.Data.SqlClient”中指定的命名空间或类型不包含任何公共成员或找不到。确保命名空间或类型已定义并包含至少一个公共成员。确保导入的元素名称不使用任何别名。

显然,编译器找不到 System.Data.SqlClient。 IIS 应用程序池正在运行 .NET 2.0,而我的站点的目标是 3.5。我对 .NET 开发非常陌生,我边走边学,但这让我陷入了困境。我是否缺少依赖项?我需要在服务器上安装 SQL Server Management Studio 吗?

【问题讨论】:

标签: sql .net vb.net visual-studio-2013 import


【解决方案1】:

我遇到了这个问题。 很容易解决。

替换

使用 Microsoft.Data.SqlClient;

而不是

使用 System.Data.SqlClient;

【讨论】:

    【解决方案2】:

    几件事

    1. 在您的 Web 应用程序中,您可能缺少对 System.Data

      的引用
      • 右键单击解决方案资源管理器
      • 添加参考文献
      • 点击 .NET 并找到 System.Data.dll
    2. 您可能已经有一个名为 SqlConnection(您自己的)的类,并且可能存在歧义。直接引用Sqlclient/SqlConnection类System.Data.SqlClient.SqlConnection

    【讨论】:

    • 1.当要添加对“System.Data”的引用时,会弹出一个对话框告诉我“网站已经在引用程序集'System.Data'”。 2. 我在代码中将其引用为 System.Data.SqlClient.SqlConnection 以供每次使用。感谢您的帮助。
    猜你喜欢
    • 1970-01-01
    • 2022-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-22
    • 1970-01-01
    相关资源
    最近更新 更多