2021-03-28 19:15:55 +04:00
|
|
|
|
using System;
|
|
|
|
|
|
2022-03-20 10:10:44 +04:00
|
|
|
|
namespace ToolsModule.ManagmentMapping
|
2021-03-28 19:15:55 +04:00
|
|
|
|
{
|
2022-03-20 10:10:44 +04:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Настройка для полей сущности правил маппинга в классе, который требуется заполнять данными из другого класса
|
|
|
|
|
/// (требуется для заполнения свойств объекта значениями одного класса значениями свойств объектов другого класса,
|
|
|
|
|
/// применяется при создании класса-описывающего сущность в хранилище из класса SetBindingModel
|
|
|
|
|
/// и из класса-описывающего сущность в хранилище в класс ElementViewModel)
|
|
|
|
|
/// </summary>
|
|
|
|
|
[AttributeUsage(AttributeTargets.Property)]
|
2021-03-28 19:15:55 +04:00
|
|
|
|
public class MapConfigurationAttribute : Attribute
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Название свойства с класса, из которого извлекаем данные
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string PropertyNameFromModel { get; set; }
|
|
|
|
|
|
2021-03-28 20:26:25 +04:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Можно копировать поле даже при доступе без прав
|
|
|
|
|
/// </summary>
|
2021-03-29 23:16:11 +04:00
|
|
|
|
public bool AllowCopyWithoutRigth { get; set; } = true;
|
2021-03-28 20:26:25 +04:00
|
|
|
|
|
2022-03-18 11:16:29 +04:00
|
|
|
|
public Type[] MethodParams { get; set; } = null;
|
|
|
|
|
|
2021-03-28 19:15:55 +04:00
|
|
|
|
/// <summary>
|
|
|
|
|
/// Настройка для полей сущности правил маппинга
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="propertyNameFromMModel">Название свойства с класса, из которого извлекаем данные</param>
|
2021-03-29 23:16:11 +04:00
|
|
|
|
public MapConfigurationAttribute(string propertyNameFromMModel)
|
2021-03-28 19:15:55 +04:00
|
|
|
|
{
|
|
|
|
|
PropertyNameFromModel = propertyNameFromMModel;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|