例子:给string扩展tolist方法,作用:将str按照指定格式分隔
测试效果
代码——重点扩展什么需要this 类型
/// <summary>
/// 判断当前值是否为空
/// </summary>
/// <param name="thisValue"></param>
/// <returns></returns>
public static bool IsNullOrEmpty(this object thisValue) => string.IsNullOrEmpty(thisValue.ObjectToString());
/// <summary>
/// 对象转string
/// </summary>
/// <param name="thisValue"></param>
/// <returns></returns>
public static string ObjectToString(this object thisValue) => thisValue?.ToString()?.Trim() ?? "";
/// <summary>
/// 以分割符分割列表
/// </summary>
/// <param name="str"></param>
/// <param name="separator"></param>
/// <returns></returns>
public static List<string> ToList(this string str, bool removeEmpty = true, char separator = ',')
{
if (str.IsNullOrEmpty()) return new List<string>();
return removeEmpty
? str.Split(new[] {
separator }, StringSplitOptions.RemoveEmptyEntries).ToList()
: str.Split(new[] {
separator }).ToList()
;
}
/// <summary>
/// 判断list不为null和是否有值
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="list"></param>
/// <returns></returns>
public static bool ListAny<T>(this IEnumerable<T> list) => list?.Any() ?? false;