您好,登錄后才能下訂單哦!
在C# Web API中處理數據轉換,通常需要遵循以下步驟:
public class UserData
{
public int Id { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public string Email { get; set; }
}
public class UserDto
{
public int Id { get; set; }
public string FullName { get; set; }
}
dotnet add package AutoMapper
然后,在控制器中配置AutoMapper映射規則:
public class UsersController : ApiController
{
private readonly IMapper _mapper;
public UsersController(IMapper mapper)
{
_mapper = mapper;
}
// GET: api/users
public IHttpActionResult GetUsers()
{
var users = _context.Users.ToList();
return Ok(_mapper.Map<List<UserDto>>(users));
}
}
在這個例子中,我們使用AutoMapper將List<UserData>
轉換為List<UserDto>
。
ValueConverter
的類:public class UserDataToUserDtoConverter : ValueConverter<UserData, UserDto>
{
protected override UserDto Convert(UserData source)
{
return new UserDto
{
Id = source.Id,
FullName = $"{source.FirstName} {source.LastName}"
};
}
}
接下來,在AutoMapper配置中注冊這個轉換器:
var config = new MapperConfiguration(cfg =>
{
cfg.AddProfile<CustomMapperProfile>();
});
IMapper mapper = config.CreateMapper();
最后,在控制器中使用這個轉換器:
public IHttpActionResult GetUsers()
{
var users = _context.Users.ToList();
return Ok(mapper.Map<List<UserDto>>(users));
}
這樣,你就可以在C# Web API中處理數據轉換了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。