Здравствуйте, возможно ли записать как то парой строк конструктор класса ArticleForSearch(Article doc), что бы не надо было его каждый раз дополнять?)
Задача состояла в том что бы все родительские параметры содержащие данные занести в новосозданный объект.
namespace Proved.Models
{
public class ArticleForSearch:Article
{
public ArticleForSearch()
{
}
public ArticleForSearch(Article doc)
{
if (!String.IsNullOrEmpty(doc.Title)) Title = doc.Title;
if (!String.IsNullOrEmpty(doc.Alias)) Alias = doc.Alias;
if (!String.IsNullOrEmpty(doc.Lead)) Alias = doc.Lead;
if (!String.IsNullOrEmpty(doc.Content)) Content = doc.Content;
if (!String.IsNullOrEmpty(doc.Image)) Image = doc.Image;
if (!String.IsNullOrEmpty(doc.MetaTitle)) MetaTitle = doc.MetaTitle;
if (!String.IsNullOrEmpty(doc.MetaDescription)) MetaDescription = doc.MetaDescription;
if (!String.IsNullOrEmpty(doc.MetaKey)) Robots = doc.MetaKey;
if (!String.IsNullOrEmpty(doc.Robots)) Robots = doc.Robots;
ID = doc.ID;
State = doc.State;
Category = doc.Category;
Created = doc.Created;
AuthorID = doc.AuthorID;
AuthorPseudo = doc.AuthorPseudo;
YandexGenre = doc.YandexGenre;
GoogleGenre = doc.GoogleGenre;
MaterialType = doc.MaterialType;
ArticleThemeID = doc.ArticleThemeID;
Featured = doc.Featured;
ShowImage = doc.ShowImage;
Hits = doc.Hits;
if (AuthorID == 0)
{
AuthorID = BaseController.UserId;
}
if(AuthorPseudo > 0)
{
if(MvcApplication.AuthorsPseudo.Where(o => o.ID == AuthorPseudo).FirstOrDefault() == null) AuthorID = BaseController.UserId;
ArticleAuthorName = MvcApplication.AuthorsPseudo.Where(o => o.ID == AuthorPseudo).FirstOrDefault().FullName;
}
else
{
if (MvcApplication.AuthorsPseudo.Where(o => o.ID == AuthorPseudo).FirstOrDefault() == null) AuthorID = BaseController.UserId;
ArticleAuthorName = MvcApplication.Authors.Where(o => o.UserId == AuthorID).FirstOrDefault().FullName;
}
ArticleCategoryName = MvcApplication.AllCategories.Where(o => o.ID == Category).FirstOrDefault().Name;
}
public string ArticleThemeName { get; set; }
public string ArticleCategoryName { get; set; }
public string ArticleAuthorName { get; set; }
public List<Tag> Tags { get; set; }
}
}