Не удалось найти имя пространства имен «Display» и «DisplayAttribute».

При попытке скомпилировать мою .Dll мне удалось выяснить все мои ссылки и ошибки, кроме этих двух (которых у меня несколько).

"Не удалось найти имя типа или пространства имен "Display" (вы пропустили директиву using или ссылку на сборку?)"

"Не удалось найти имя типа или пространства имен "DisplayAttribute" (вы пропустили директиву использования или ссылку на сборку?)"

Я использую System.ComponentModel и System.ComponentModel.DataAnnotations. Простите меня, так как я очень нечетко понимаю все это, и я просто вношу небольшое изменение в этот проект. Я не понимаю, какой ссылки мне не хватает, чтобы вызвать эти ошибки, я также уверен, что проблема вызвана моей неопытностью. Любая помощь приветствуется, спасибо.

Небольшая часть кода:

using PatientTracker.Entities.Validation;
using System;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Runtime.Serialization;
using System.Xml.Serialization;

namespace PatientTracker.Entities
{
  [Serializable]
  public abstract class EntityBaseCore : IEntity, INotifyPropertyChanged, IDataErrorInfo, IDeserializationCallback, INotifyPropertyChanging
  {
    [Display(AutoGenerateField = false)]
    [NonSerialized]
    protected bool bindingIsNew = true;
    [Display(AutoGenerateField = false)]
    [NonSerialized]
    private bool isEntityTracked;
    [Display(AutoGenerateField = false)]
    [NonSerialized]
    private bool suppressEntityEvents;
    private string entityHashCode;
    [NonSerialized]
    private object tag;
    [NonSerialized]
    private ValidationRules _validationRules;

    [Display(AutoGenerateField = false)]
    public abstract string TableName { get; }

    [Display(AutoGenerateField = false)]
    public abstract string[] TableColumns { get; }

    [Browsable(false)]
    [Display(AutoGenerateField = false)]
    public virtual bool IsDeleted
    {
      get
      {
        return this.EntityState == EntityState.Deleted;
      }
    }

person Justin Reid    schedule 01.03.2016    source источник
comment
можешь показать код который вызывает эти ошибки   -  person Jonesopolis    schedule 01.03.2016
comment
Могу показать небольшую часть, которой должно хватить.   -  person Justin Reid    schedule 01.03.2016
comment
ПРИМЕЧАНИЕ. Я также вообще не вносил никаких изменений в этот код.   -  person Justin Reid    schedule 01.03.2016
comment
Скорее всего, вам не хватает ссылки на System.ComponentModel.DataAnnotations.dll сборку. Щелкните правой кнопкой мыши узел References в обозревателе решений и выберите Add Reference..., выберите вкладку Assemblies, найдите сборку System.ComponentModel.DataAnnotations.dll в списке и убедитесь, что она отмечена флажком. Перекомпилировать.   -  person William    schedule 01.03.2016
comment
Интересно .. Итак, System.ComponentModel.DataAnnotations был в моих ссылках, но для согласованности в соответствии с вашей рекомендацией я удалил его и снова добавил в качестве ссылки. Теперь над ним стоит желтый восклицательный знак, и у меня еще 236 ошибок при попытке перекомпилировать... явно что-то здесь не так.   -  person Justin Reid    schedule 01.03.2016
comment
У меня есть следующие ошибки, относящиеся к System.ComponentModel.DataAnnotations: не удалось разрешить сборку System.ComponentModel.DataAnnotations, версия = 3.5.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35, CPUArchitecture = MSIL. Целевая структура, требуемая этой сборкой (3.5), выше, чем целевая структура проекта. Если эта ссылка требуется для вашего кода, вы можете получить ошибки компиляции. Не удалось найти указанный компонент «System.ComponentModel.DataAnnotations».   -  person Justin Reid    schedule 01.03.2016
comment
Целевая структура, требуемая этой сборкой (3.5), выше, чем целевая структура проекта - мне кажется достаточно ясной. Ваш проект нацелен на более старую версию фреймворка.   -  person CodeCaster    schedule 01.03.2016
comment
Не имеет никакого смысла, но я попробую скомпилировать на моей локальной машине. Сервер дает мне только варианты 2.0, 3.0 и 3.5, которые я использую 3.5. на сервере установлена ​​4.5.1. Цените ваши предложения.   -  person Justin Reid    schedule 01.03.2016
comment
Взгляните на следующее меню в Visual Studio: Проект › [имя вашего проекта] Свойства. Затем выберите «Приложение» слева и проверьте настройку «Целевая платформа». Возможно, вы используете неправильную версию .NET в своем решении.   -  person darth_phoenixx    schedule 02.03.2016


Ответы (1)


Я щелкнул правой кнопкой мыши по дисплею и использовал разрешение, используя имя сборки, как указано выше, и это сработало нормально. удаление и добавление сборки не помогло.

person user236575    schedule 08.08.2016