在这里,我使用 automapper 类将“userdetails”类与“FinalizedDetails”类匹配。我已经尝试过,但我只得到了姓氏值,但对于 NameFirst 和 BooksInfo 它什么也不返回。如何解决这个问题我对自动映射器很陌生。我不明白 Automapper 类的完整用法。
家庭控制器:
public ActionResult Index()
{
UserDetails objDao = setData();
Mapper.CreateMap<UserDetails, FinalizedDetails>();
FinalizedDetails objDetails = Mapper.Map<UserDetails,FinalizedDetails >(objDao);
return View(objDetails);
}
[HttpPost]
public ActionResult Index(string id)
{
return View();
}
private UserDetails setData()
{
UserDetails daoObj = new UserDetails();
daoObj.FirstName = "Mike";
daoObj.LastName = "Castillo";
daoObj.Salary = 6000;
daoObj.Certified = true;
daoObj.BookDetails = new Books();
daoObj.BookDetails.BookName = "Auto Mapper Tuts";
daoObj.BookDetails.BookPrice = 200;
daoObj.BookDetails.BookDescription = "A brief Description about Automapper class";
return daoObj;
}
索引.cshtml:
@model AutoMapper_Demo.Models.FinalizedDetails
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>Index</h2>
@Html.TextBox("First anme");
<p>First name : @Model.FirstName</p>
<p>Last Name : @Model.LastName</p>
<p>BookInfo : @Model.BooksInfo</p>
楷模 :
public class UserDetails
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string getFullName()
{
return FirstName + " " + LastName;
}
public int Salary { get; set; }
public bool Certified { get; set; }
public Books BookDetails { get; set; }
}
public class Books
{
public string BookName { get; set; }
public int BookPrice { get; set; }
public string BookDescription { get; set; }
}
public class FinalizedDetails
{
public string NameFirst { get; set; }
public string LastName { get; set; }
public string BooksInfo { get; set; }
}
输出
First name :
Last Name : Castillo
BookInfo :