У меня есть структура таблицы следующим образом:
CREATE TABLE MessageParameters
(
SequenceId int IDENTITY(1,1) NOT NULL,
MessageQueueId int NOT NULL,
ParameterName varchar(50) NOT NULL,
ParameterValue varchar(300) NOT NULL,
CONSTRAINT PK_MessageParameters PRIMARY KEY CLUSTERED(SequenceId)
)
CREATE TABLE MessageQueue
(
SequenceId int IDENTITY(1,1) NOT NULL,
MessageType int NOT NULL,
[Status] int DEFAULT(0) NOT NULL,
Created datetime DEFAULT(GETDATE()) NOT NULL,
Modified datetime DEFAULT(GETDATE()) NOT NULL,
CONSTRAINT PK_MessageQueue PRIMARY KEY CLUSTERED(SequenceId)
)
То, что я хочу сделать, это использовать подклассы на основе MessageType для моей объектной модели. Это достаточно просто, но я хотел бы изменить набор параметров в реальных свойствах моего подкласса.
Например, у меня есть (под) класс ActivationEmail
public class ActivationEmail : MessageBase
{
//shared properties are member of base class
public string Param1 {get; set;}
public string Param2 {get; set;}
public string Param3 {get; set;}
}
приведет к данным в моей таблице MessageParameters выше, как это
ParameterName ParameterValue
------------------------------------------ ---------------------------------
Param1 value1
Param2 value2
Param3 value3
Я понимаю, что мог бы иметь List как часть объекта для params и иметь свойства (Param1, Param2 и т. Д.) Для автоматического добавления / обновления / получения данных в этом списке, но я надеюсь, что что-то будет обработано внутри самих отображений.