C# ';var';找不到

C# ';var';找不到,c#,.net,visual-studio-2013,C#,.net,Visual Studio 2013,我收到错误“找不到类型或命名空间名称'var'是否缺少using指令或程序集引用?”,是的,我确实确保它都是小写的。另外,我使用的是.NETFramework4.5.1,我知道var在3.0之前不起作用。下面是我的代码的一部分,如果我去掉var语句,它就没有错误或编译困难 using GalaSoft.MvvmLight; using System; using VKCatalyst.Model; namespace VKCatalyst.ViewModel { public cla

我收到错误“找不到类型或命名空间名称'var'是否缺少using指令或程序集引用?”,是的,我确实确保它都是小写的。另外,我使用的是.NETFramework4.5.1,我知道var在3.0之前不起作用。下面是我的代码的一部分,如果我去掉var语句,它就没有错误或编译困难

using GalaSoft.MvvmLight;
using System;
using VKCatalyst.Model;

namespace VKCatalyst.ViewModel
{

    public class MainViewModel : ViewModelBase
    {
        private readonly IDataService _dataService;

        var i = 10; 
    }
}

虽然我看到这一点在过去已经得到了解决(我认为可能),但我认为离开像我这样的新程序员可能是一个好主意,可能没有意识到他们的“var”没有被找到的原因是它不在方法中

您正试图将方法作用域代码直接放入类中。它需要在一个方法内部,或者您需要给它一个显式类型

您不能对类的成员使用:

从Visual C#3.0开始,方法中声明的变量 作用域可以具有隐式类型var

见:

从Visual C#3.0开始,在方法中声明的变量 作用域可以具有隐式类型var

似乎您正试图在类级别声明和初始化字段,您不能在类级别使用
var


您可能会看到这篇文章:

您想用
var i=10做什么?@Selman22我不知道类字段不能隐式键入。我是一个新的程序员,从来没有选择过var。@JarodKientz你不应该真正使用var,除非你真的必须使用。@ClaudioRedi我只使用
VARI=10作为一个例子,如果这是我唯一的用途,我只会使用
int
而不是
var
。在我的应用程序中,我将使用它调用几种可能的数据类型之一。文章链接不错。然而,有一种新的编译器即将出现,并且随着它的出现,使用初始值设定项实现隐式类型字段可能会更容易。但这似乎不在他们的考虑范围之内。