s Validation validation, string actualFileExt,
string[] expectFileExt)
{
var allowFileExts = expectFileExt.ToString(",");
return Check<FileNotFoundException>(validation, () => expectFileExt.ContainIgnoreCase(actualFileExt),
string.Format(ValidateResource.ParameterCheck_FileExtCompare, allowFileExts));
}
/// <summary>
/// 检查文件类型
/// </summary>
/// <param name="validation">Validation</param>
/// <param name="actualFileExt">实际文件类型;eg: .xls</param>
/// <param name="expectFileExt">期待文件类型</param>
/// <returns></returns>
public static Validation CheckedFileExt(this Validation validation, string actualFileExt, string expectFileExt)
{
return Check<FileNotFoundException>(validation, () => actualFileExt.CompareIgnoreCase(expectFileExt),
string.Format(ValidateResource.ParameterCheck_FileExtCompare, expectFileExt));
}
/// <summary>
/// 检查指定路径的文件必须存在,否则抛出<see cref="FileNotFoundException" />异常。
/// </summary>
/// <param name="validation">Validation</param>
/// <param name="data">参数</param>
/// <exception cref="ArgumentNullException">当文件路径为null时</exception>
/// <exception cref="FileNotFoundException">当文件路径不存在时</exception>
/// <returns>Validation</returns>
public static Validation CheckFileExists(this Validation validation, string data)
{
return Check<FileNotFoundException>(validation, () => File.Exists(data),
string.Format(ValidateResource.ParameterCheck_FileNotExists, data));
}
/// <summary>
/// 检查参数必须大于[或可等于,参数canEqual]指定值,否则抛出<see cref="ArgumentOutOfRangeException" />异常。
/// </summary>
/// <typeparam name="T">参数类型。</typeparam>
/// <param name="validation">Validation</param>
/// <param name="value">判断数据</param>
/// <param name="paramName">参数名称。</param>
/// <param name="target">要比较的值。</param>
/// <param name="canEqual">是否可等于。</param>
/// <exception cref="ArgumentOutOfRangeException">ArgumentOutOfRangeException</exception>
/// <returns>Validation</returns>
public static Validation CheckGreaterThan<T>(this Validation validation, T value, string paramName, T target,
bool canEqual)
where T : IComparable<T>
{
// bool flag = canEqual ? value.CompareTo(target) >= 0 : value.CompareTo(target) > 0;
var format = canEqual
? ValidateResource.ParameterCheck_NotGreaterThanOrEqual
: ValidateResource.ParameterCheck_NotGreaterThan;
return Check<ArgumentOutOfRangeException>(validation,
() => canEqual ? value.CompareTo(target) >= 0 : value.CompareTo(target) > 0,
string.Format(format, paramName, target));
}
/// <summary>
/// 检查参数必须小于[或可等于,参数canEqual]指定值,否则抛出<see cref="ArgumentOutOfRangeException" />异常。
/// </summary>
/// <typeparam name="T">参数类型。</typeparam>
/// <param name="validati |