using System.Collections.Generic;
using System.Linq;
namespace XMLSpy.Linq {
/// <summary>
/// 在不同类型之间转换
/// Author : [email]xmlspy.spring@gmail.com[/email]
/// </summary>
public class TypeCast {
/// <summary>
/// 把YourUser[]转换为MyUser[]
/// </summary>
/// <param name="yourUsers"></param>
/// <returns></returns>
public MyUser[] ToMyUsers(YourUser[] yourUsers) {
MyUser[] myUsers = null;
// 方式1: 使用Linq
myUsers = (from user in yourUsers
select new MyUser
{
Id = user.Id,
Name = user.Name
}).ToArray();
// 方式2: 使用Lambda表达式
myUsers = yourUsers.Select(user => new MyUser
{
Id = user.Id,
Name = user.Name
}).ToArray();
return myUsers;
}
/// <summary>
/// 把List<YourUser>转换为List<MyUser>
/// </summary>
public List<MyUser> ToMyUserList(List<YourUser> yourUsers) {
List<MyUser> myUsers = null;
// 方式1: 使用Linq
myUsers = (from user in yourUsers
select new MyUser
{
Id = user.Id,
Name = user.Name
}).ToList();
// 方式2: 使用Lambda表达式
myUsers = yourUsers.Select(user => new MyUser
{
Id = user.Id,
Name = user.Name
}).ToList();
return myUsers;
}
}
}