是否可以定义一个同时是运算符的扩展方法?我想要一个固定的类添加使用实际上无法应用的已知运算符的可能性.对于这种特殊情况,我想这样做:
somestring++; //i really know that this string contains a numeric value
Run Code Online (Sandbox Code Playgroud)
我不想为所有代码传播类型转换.我知道我可以在字符串上创建包装类并定义该运算符但我想知道这种事情是否可以避免使用MySpecialString搜索和替换每个字符串声明.
编辑:因为大多数人说字符串是密封的,所以推导是不可能的,所以我修改"派生"到"包装",我的错误.
我正在尝试编写一个简单的程序来比较单独文件夹中的文件.我目前正在使用LINQ to Objects来解析文件夹,并希望在我的结果集中包含从字符串中提取的信息.
这是我到目前为止所拥有的:
FileInfo[] fileList = new DirectoryInfo(@"G:\Norton Backups").GetFiles();
var results = from file in fileList
orderby file.CreationTime
select new { file.Name, file.CreationTime, file.Length };
foreach (var x in results)
Console.WriteLine(x.Name);
Run Code Online (Sandbox Code Playgroud)
这会产生:
AWS025.sv2i
AWS025_C_Drive038.v2i
AWS025_C_Drive038_i001.iv2i
AWS025_C_Drive038_i002.iv2i
AWS025_C_Drive038_i003.iv2i
AWS025_C_Drive038_i004.iv2i
AWS025_C_Drive038_i005.iv2i
...
Run Code Online (Sandbox Code Playgroud)
我想修改LINQ查询,以便:
_C_Drive038上面的示例中,但038 驱动器号可能会更改)._i0XX文件名末尾没有),我想要包含一个字段.038).001的增量(例如,将是增量编号)我相信查询的基本布局如下所示,但我不确定如何最好地完成它(我有一些关于如何做到这一点的想法,但我有兴趣听到其他人如何可能会这样做):
var results = from file in fileList
let IsMainBackup = \\ ??
let ImageNumber = \\ ??
let IncrementNumber = \\ ??
where …Run Code Online (Sandbox Code Playgroud)