C#/.Net/.Net Core 小知识点汇集

作者:outlela  来源:本站原创   发布时间:2020-8-14 9:57:24

1.C#字符串数组转换为数值类型数组

很简单的一句:

int [] arr=Array.ConvertAll(page.Select1.Split(','),Convert.ToInt32);

2..net获取当前方法(函数)的名称

System.Reflection.MethodBase.GetCurrentMethod().Name

3..net core 获取调用方法的函数名称

public void DoProcessing()
{
    TraceMessage("Something happened.");
}

public void TraceMessage(string message,[System.Runtime.CompilerServices.CallerMemberName] string memberName = "",[System.Runtime.CompilerServices.CallerFilePath] string sourceFilePath = "",[System.Runtime.CompilerServices.CallerLineNumber] int sourceLineNumber = 0)
{
    System.Diagnostics.Trace.WriteLine("message: " + message);
    System.Diagnostics.Trace.WriteLine("member name: " + memberName);
    System.Diagnostics.Trace.WriteLine("source file path: " + sourceFilePath);
    System.Diagnostics.Trace.WriteLine("source line number: " + sourceLineNumber);
}

// Sample Output:
//  message: Something happened.
//  member name: DoProcessing
//  source file path: c:\Users\username\Documents\Visual Studio 2012\Projects\CallerInfoCS\CallerInfoCS\Form1.cs
//  source line number: 31

微软官方说明文档:CallerMemberNameAttribute 

4、.NET CORE3.1 自定义Json格式

services.AddControllersWithViews()
                .AddNewtonsoftJson(options =>
                {
                    options.SerializerSettings.DateFormatString = "yyyy-MM-dd HH:mm:ss";
                });

5、.NET CORE3 注入使用ADO.NET

解决:The specified invariant name 'System.Data.SqlClient' wasn't found in the list of registered .NET Data Providers.(在已注册的.NET数据提供程序列表中找不到指定的名称'System.Data.SqlClient'。)

在Startup的Configure中注入以下内容即可:

DbProviderFactories.RegisterFactory("System.Data.SqlClient", SqlClientFactory.Instance);

6、EF CORE 自动生成Model

在vs中打开 程序包管理器控制台 选择 对应的项目,然后输入以下内容:

Scaffold-DbContext "Data Source=服务器;Initial Catalog=数据库名;User ID=登录账号;Password=密码." Microsoft.EntityFrameworkCore.SqlServer -OutputDir 文件夹 -Force

注意:前提是项目能够生成,如果项目不能生成会提示 Build Failed. 

如果提示:Scaffold-DbContext : 无法将“Scaffold-DbContext”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。

安装包:Microsoft.EntityFrameworkCore.Tools 即可解决。


7、EF CORE 获取文件MD5

var filename = @"C:\Users\mm\Pictures\微信图片_20200925201258.jpg";//文件路径
            using MD5 md5 = MD5.Create();//MD5实例化
            using FileStream file = new FileStream(filename, FileMode.Open);//打开文件
            var result = md5.ComputeHash(file);//计算MD5
            var strResult = BitConverter.ToString(result);//带-的MD5
            string result3 = strResult.Replace("-", "");//去掉-
            file.Dispose();//释放文件资源,避免占用

            Console.WriteLine(strResult);
            Console.WriteLine(result3);



*本文最后修改于:2020-10-9 22:18:10
本文标签: C# .NET 数组 方法名 .Net Core
本文由本站原创发布, 本文链接地址:https://outlela.com/Code/83.html
转载或引用请保留地址并注明出处:outlela.com