XFEExtension
【DLL】XFE各类拓展是一个C#的DLL库,旨在优化C#代码中常用语句的使用,并提供更简洁的访问方式,同时提供Xunit测试框架,快速搭建服务器/客户端,免费ChatGPTAPI接口,免费通讯服务器,XFE下载器,新增格式等
关注
0
Fork
0
Star
0
返回提交历史
Modified
XFE各类拓展.NetCore/XFE各类拓展/XFECode.cs
+32
-8
XFEstudio/XFEExtension
现在,无论是有返回值异步还是同步方法,均会显示结果
4bf385d
代码差异
1 个文件
+32
-8
@@ -267,6 +267,7 @@ public abstract class XFECode
267
267
Console.ResetColor();
268
268
selfTimeCounter.Start();
269
269
selfTimeCounter.Stop();
270
object? result = null;
270
271
try
271
272
{
272
273
currentMethodIsAsserted = false;
@@ -276,10 +277,17 @@ public abstract class XFECode
276
277
await (Task)method.Invoke(Activator.CreateInstance(subClass), paramsForMethod)!;
277
278
timeCounter.Stop();
278
279
}
280
else if (method.ReturnType.IsGenericType && method.ReturnType.GetGenericTypeDefinition() == typeof(Task<>))
281
{
282
timeCounter.Start();
283
dynamic dynamicResult = method.Invoke(Activator.CreateInstance(subClass), paramsForMethod)!;
284
result = await dynamicResult;
285
timeCounter.Stop();
286
}
279
287
else
280
288
{
281
289
timeCounter.Start();
282
var result = method.Invoke(Activator.CreateInstance(subClass), paramsForMethod);
290
result = method.Invoke(Activator.CreateInstance(subClass), paramsForMethod);
283
291
timeCounter.Stop();
284
292
if (attribute is SMRTestAttribute resultAttribute2)
285
293
{
@@ -323,15 +331,23 @@ public abstract class XFECode
323
331
Console.Write("\t执行时间:");
324
332
Console.ForegroundColor = timeColor;
325
333
if (elapsedTime.TotalHours >= 1)
326
Console.WriteLine(elapsedTime);
334
Console.Write(elapsedTime);
327
335
else if (elapsedTime.TotalMinutes >= 1)
328
Console.WriteLine($"{elapsedTime.Minutes} 分 {elapsedTime.Seconds} 秒 {elapsedTime.Milliseconds} 毫秒");
336
Console.Write($"{elapsedTime.Minutes} 分 {elapsedTime.Seconds} 秒 {elapsedTime.Milliseconds} 毫秒");
329
337
else if (elapsedTime.TotalSeconds >= 1)
330
Console.WriteLine($"{elapsedTime.TotalSeconds:F3} 秒");
338
Console.Write($"{elapsedTime.TotalSeconds:F3} 秒");
331
339
else if (elapsedTime.TotalMilliseconds >= 1)
332
Console.WriteLine($"{elapsedTime.TotalMilliseconds:F3} 毫秒");
340
Console.Write($"{elapsedTime.TotalMilliseconds:F3} 毫秒");
333
341
else
334
Console.WriteLine($"{elapsedTime.TotalMilliseconds * 1000:F2} 纳秒");
342
Console.Write($"{elapsedTime.TotalMilliseconds * 1000:F2} 纳秒");
343
if (result is not null)
344
{
345
Console.ForegroundColor = mainColor;
346
Console.Write("\t执行结果:");
347
Console.ForegroundColor = methodColor;
348
Console.Write(result);
349
}
350
Console.WriteLine();
335
351
Console.ForegroundColor = ConsoleColor.Black;
336
352
Console.WriteLine();
337
353
if (isSuccessful && isResultEqual)
@@ -538,6 +554,13 @@ public abstract class XFECode
538
554
await (Task)method.Invoke(classInstance, paramsForMethod)!;
539
555
timeCounter.Stop();
540
556
}
557
else if (method.ReturnType.IsGenericType && method.ReturnType.GetGenericTypeDefinition() == typeof(Task<>))
558
{
559
timeCounter.Start();
560
dynamic dynamicResult = method.Invoke(classInstance, paramsForMethod)!;
561
result = await dynamicResult;
562
timeCounter.Stop();
563
}
541
564
else
542
565
{
543
566
timeCounter.Start();
@@ -594,13 +617,14 @@ public abstract class XFECode
594
617
Console.Write($"{elapsedTime.TotalMilliseconds:F3} 毫秒");
595
618
else
596
619
Console.Write($"{elapsedTime.TotalMilliseconds * 1000:F2} 纳秒");
597
Console.ForegroundColor = mainColor;
598
620
if (result is not null)
599
621
{
622
Console.ForegroundColor = mainColor;
600
623
Console.Write("\t执行结果:");
601
624
Console.ForegroundColor = methodColor;
602
Console.WriteLine(result);
625
Console.Write(result);
603
626
}
627
Console.WriteLine();
604
628
Console.ForegroundColor = ConsoleColor.Black;
605
629
Console.WriteLine();
606
630
if (isSuccessful && isResultEqual)