42 lines
2.2 KiB
C#
42 lines
2.2 KiB
C#
using System;
|
||
|
||
namespace ModuleTools.Attributes
|
||
{
|
||
/// <summary>
|
||
/// Настройка для полей сущности правил маппинга в классе, который требуется заполнять данными из другого класса
|
||
/// (требуется для заполнения свойств объекта значениями одного класса значениями свойств объектов другого класса,
|
||
/// применяется при создании класса-описывающего сущность в хранилище из класса SetBindingModel
|
||
/// и из класса-описывающего сущность в хранилище в класс ElementViewModel)
|
||
/// </summary>
|
||
[AttributeUsage(AttributeTargets.Property)]
|
||
public class MapConfigurationAttribute : Attribute
|
||
{
|
||
/// <summary>
|
||
/// Название свойства с класса, из которого извлекаем данные
|
||
/// </summary>
|
||
public string PropertyNameFromModel { get; set; }
|
||
|
||
/// <summary>
|
||
/// Сложное свойство (свойствое в другом классе-свойстве)
|
||
/// </summary>
|
||
public bool IsDifficle { get; set; }
|
||
|
||
/// <summary>
|
||
/// Можно копировать поле даже при доступе без прав
|
||
/// </summary>
|
||
public bool AllowCopyWithoutRigth { get; set; }
|
||
|
||
/// <summary>
|
||
/// Настройка для полей сущности правил маппинга
|
||
/// </summary>
|
||
/// <param name="propertyNameFromMModel">Название свойства с класса, из которого извлекаем данные</param>
|
||
/// <param name="isDifficle">Сложное свойство (свойствое в другом классе-свойстве)</param>
|
||
/// <param name="allowCopyWithoutRigth">Можно копировать поле даже при доступе без прав</param>
|
||
public MapConfigurationAttribute(string propertyNameFromMModel, bool isDifficle = false, bool allowCopyWithoutRigth = true)
|
||
{
|
||
PropertyNameFromModel = propertyNameFromMModel;
|
||
IsDifficle = isDifficle;
|
||
AllowCopyWithoutRigth = allowCopyWithoutRigth;
|
||
}
|
||
}
|
||
} |