xxxxx是一个名称空间,但是像Type一样使用

时间:2018-02-19 09:57:45

标签: c# .net visual-studio asp.net-core-mvc

我有一个问题似乎在搜索SO时会产生大量的点击但是我读过的每个实例都清楚海报实际上是使用名称创建命名空间然后再次作为类使用等

我有一个实例,我找不到对它声称我误用的命名空间的任何引用。

我正在使用VS 2017共同编写.net core 2应用程序并获得上述问题。奇怪的是,如果我将代码推送到TFS并且我的同事然后将其拉下来,他就不会遇到问题。如果我擦拭我的副本并自己下载一份新的副本,我仍然会遇到问题。

ChangeFormViewModel.cs

using ChangeRequestForm_Data.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;

namespace ChangeRequestForm_Web.ViewModels
{
    public class ChangeFormViewModel
    {
        public ChangeRequest ChangeRequest { get; set; }
        public ChangeProfile ChangeProfile { get; set; }

        public List<ChangeDataItem> ChangeDataItems { get; set; }
    }
}

违规行是;

public ChangeRequest ChangeRequest { get; set; }

ChangeRequest.cs

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Text;

namespace ChangeRequestForm_Data.Models
{
    public class ChangeRequest : BaseEntity
    {
        public string ChangeTitle { get; set; }
        public bool ChangeSubmitted { get; set; }
        public bool ChangeCompleted { get; set; }

    }
}

我已经检查了我的VS安装并验证我也使用了与我的同事相同的版本。现在已经发生了两个不同的项目。

编辑:如果我使用ChangeRequestForm_Data.Models.ChangeRequest这是有效的,事实上我是如何解决上一个项目中的问题。当我的同事然后拉出我的更改时,他会在VS中突出显示它可以被优化,因为完整的参考是不必要的。

2 个答案:

答案 0 :(得分:1)

尝试使用完全限定名称

public ChangeRequestForm_Data.Models.ChangeRequest ChangeRequest { get; set; } 

答案 1 :(得分:0)

您需要在定义模型类之前正确设置项目的名称空间,而无需完全限定的名称。