У меня есть несколько шаблонов электронной почты, и в каждом шаблоне у меня есть верхний и нижний колонтитулы, которые имеют одинаковую информацию.
Верхний и нижний колонтитулы представлены EmailModel.cs
public class EmailModel
{
public string CompanyName { get { return ConfigurationManager.AppSettings["CompanyName"]; } }
public string PhoneNumber { get { return ConfigurationManager.AppSettings["PhoneNumber"]; } }
public string FacebookUrl { get { return ConfigurationManager.AppSettings["FacebookUrl"]; } }
public string TwitterUrl { get { return ConfigurationManager.AppSettings["TwitterUrl"]; } }
public string YouTubeUrl { get { return ConfigurationManager.AppSettings["YouTubeUrl"]; } }
//Additional methods for sending these templates as emails
}
Теперь для определенного шаблона электронной почты у меня есть модель представления. NewSignUpEmailViewModel.cs
Должен ли я сделать это:
public class NewSignUpEmailViewModel : EmailModel
{
public string FirstName { get; set; }
public string CompanyName { get; set; }
public string UserName { get; set; }
public Guid UserId { get; set; }
}
или это:
public class NewSignUpEmailViewModel
{
public EmailModel Email {get; set;}
public string FirstName { get; set; }
public string CompanyName { get; set; }
public string UserName { get; set; }
public Guid UserId { get; set; }
}
Я просто использовал электронную почту в качестве примера, есть ли плюсы / минусы для каждого?
Единственное, что я вижу, это то, что в некоторых случаях вы сталкиваетесь с проблемой дублирования имени свойства.