【问题标题】:Type or Namespace 'var' could not be found找不到类型或命名空间“var”
【发布时间】:2012-05-17 12:45:43
【问题描述】:

我正在处理一个内联页面以显示一些课程信息,并在使用“var”时不断收到编译错误。

您能否检查以下代码行并推荐修复它的想法。

//Get basic template details
using (var objConn = new SqlConnection(strConnection))
{
objConn.Open();

我导入的命名空间如下所示。

<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.Text" %

有什么想法吗?

编辑

服务器上的 .Net 版本 - Microsoft .NET Framework 版本:2.0

谢谢。

【问题讨论】:

  • var 关键字区分大小写。你写Var了吗?
  • 发布确切的代码或确切的错误消息,其中一个不是真实的。
  • 您使用的是什么版本的 C#? var 在 3.0 之前不存在。
  • 我感觉 IIS 版本使用的是 2.0 而不是更高版本的 .Net 也忽略了我在原始查询中区分大小写的拼写,在代码中是小写的。
  • 在您的 Visual Studio 中,右键单击项目,转到属性,在应用程序下查看框架

标签: c#


【解决方案1】:

假设这不是一个简单的大写/小写错字,因为您在代码 sn-p 中输入正确。

转到您的项目。右键单击-> 属性并检查您所针对的 .NET Framework 版本。 var 关键字仅在 C# 3.0 及更高版本中可用。

需要检查的其他事项。检查 web.config 中的编译器版本(如果已设置)。看到这个问题:Error using 'var' after upgrading to Visual Studio 2010

还要检查您在 IIS/应用程序池下使用的 ASP.NET 版本。

【讨论】:

    【解决方案2】:

    您要么需要切换到使用 C# 3.0 和 .NET Framework 3.5,要么需要停止使用 var 关键字并指定正确的类型,例如:

    using (SqlConnection objConn = new SqlConnection(strConnection))
    

    【讨论】:

    • @leppie 感谢您的澄清。
    【解决方案3】:

    你应该导入“系统”

    <%@ Import Namespace="System" %>
    

    【讨论】:

    • var 是一个关键字。不是存在于命名空间中的类型。这应该没有效果。
    • 你是对的,如果假设代码中可能需要系统名称空间,我很高兴,它与数据库交互,因此可能导致错误。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-25
    • 2017-07-12
    • 2011-05-13
    • 2021-03-01
    • 2020-08-13
    • 2018-11-18
    相关资源
    最近更新 更多