kreta/Framework/Entities/ReadOnlyEntityAttributeException.cs
2024-03-13 00:33:46 +01:00

61 lines
2.3 KiB
C#

using System;
using System.Runtime.Serialization;
using Kreta.Framework.Localization;
using Kreta.Framework.Logging;
namespace Kreta.Framework.Entities
{
/// <summary>
/// Módosítási kísérlet történt az entitás csak olvasható attribútumára.
/// </summary>
[FriendlyName(1000005, "A(z) '{AttributeName}' attribútum csak olvasható.")]
[ErrorCode(Events.ENTITY_READONLYATTRIBUTE)]
[Serializable]
public sealed class ReadOnlyEntityAttributeException : EntityException
{
const string _errorMessage = "The attribute is read-only.";
/// <summary>
/// Az osztály konstruktora.
/// </summary>
/// <param name="entityName">Az entitás neve</param>
/// <param name="attributeName">Az attribútum neve</param>
public ReadOnlyEntityAttributeException(string entityName, string attributeName)
: base(_errorMessage)
{
SetValue("EntityName", entityName);
SetValue("AttributeName", attributeName);
}
/// <summary>
/// Az osztály alapértelmezett konstruktora.
/// </summary>
[Obsolete("Ezt a konstruktort ne használd!")]
public ReadOnlyEntityAttributeException() { }
/// <summary>
/// Az osztály konstruktora.
/// </summary>
/// <param name="message">A kivétel üzenete</param>
[Obsolete("Ezt a konstruktort ne használd!")]
public ReadOnlyEntityAttributeException(string message)
: base(message) { }
/// <summary>
/// Az osztály konstruktora.
/// </summary>
/// <param name="message">A kivétel üzenete</param>
/// <param name="innerException">A belső kivétel</param>
[Obsolete("Ezt a konstruktort ne használd!")]
public ReadOnlyEntityAttributeException(string message, Exception innerException)
: base(message, innerException) { }
/// <summary>
/// Az osztály konstruktora.
/// </summary>
/// <param name="info">Sorosítási adatok</param>
/// <param name="context">Sorosítási adatfolyam</param>
ReadOnlyEntityAttributeException(SerializationInfo info, StreamingContext context)
: base(info, context) { }
}
}