sTools.EFCore 8.0.0-z

This is a prerelease version of sTools.EFCore.
dotnet add package sTools.EFCore --version 8.0.0-z
                    
NuGet\Install-Package sTools.EFCore -Version 8.0.0-z
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="sTools.EFCore" Version="8.0.0-z" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="sTools.EFCore" Version="8.0.0-z" />
                    
Directory.Packages.props
<PackageReference Include="sTools.EFCore" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add sTools.EFCore --version 8.0.0-z
                    
#r "nuget: sTools.EFCore, 8.0.0-z"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package sTools.EFCore@8.0.0-z
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=sTools.EFCore&version=8.0.0-z&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=sTools.EFCore&version=8.0.0-z&prerelease
                    
Install as a Cake Tool

项目说明:

sTools是一个工具类库,里边封装了一系列常用方法,为了达到最小化依赖的目的,一些需要引用第三方类库的功能抽离到了单独的子类库中单独演进和发布,其中,sTools.dll是其中最基础的包,其他子包可能引用了这个基础包,也可能没有引用,试试看吧!祝你使用愉快,有问题可联系:1731321614@qq.com

贡献与支持:

若此类库对您有些许用处,还望客官能打赏支持一二,1分钱不嫌少,1块钱足以让俺兴奋地睡不着,10块钱你叫俺干啥都行!呃……扫个红包码,双方都拿个红包,应该最是不错!
alipay_hb wxpay_zs alipay_sq wxpay_sq

运行环境:

.NET 6+

该引用谁:

sTools.dll 若除了NETCore框架自带的内容外,没有任何单独的包依赖,则只用这一个就可以了。 sTools.Web.MvcEFCore.dll 若用于Web,且环境是Mvc+EFCore,则只引用这一个就可以了,它包含了sTools.dll中的内容。 sTools.Winform.EFCore.dll 若用于Winform,且引用了EFCore,则只引用这一个就可以了,它包含了sTools.dll中的内容。

版本说明:

  1. 版本号设定为4段,以“.”隔开,从左到右,每段都代表不同的含义,形如IPV4的网址。
  2. 从左至右,分别为主版本号、次版本号、大修订号、小修订号,每一段上的数字递增时,其右边各段上的数字全都归0重新计数。
  3. 这4段分别代表不同的含义,释义如下:
    • 主版本号:表示程序被完全重写或大范围重写,文件摆放位置规则、命名规则等发生重大改变。
    • 次版本号:表示程序中发生了与上个版本不兼容的改动,这些改动多半是因为功能的删减、命名的更改、文件位置的更换等。
    • 大修订号:表示程序中增加了新功能,但与上个版本完全兼容,可以直接替换上个版本。
    • 小修订号:表示程序中只是发生了代码的小范围调整,没有任何设计级别的规则改动,也没有功能级别的增删,与上个版本完全兼容,可以直接替换上个版本,这些小范围调整多半是因为逻辑改进、代码整理、bug修复等。在发布到NuGet时,有个尾部的带字母的版本号,其字母与此小修订号大致相对应,只有在相对稳定时才会去掉尾部字母,但此时,小修订号不会被清理,保持不动。
  4. 新修订中,我为了最大化适应和最大化便利这两个目标,我将项目逐步拆成了多种版本,以解决并不是所有方法都适用于所有项目的问题,比如有些方法只适用于Winform项目,而另一些只适用于Web项目,有些甚致只适用于引用了EFCore包的项目,以前V3版本哪种一个版本支持所有的思路很难做到兼容兼顾,所以,我在此项变更中,逐步拆成像下边这样的形式:
    • sTools.Extensions.dll 支持所有类型,以控制台程序为目标。 sTools.Extensions.Web.dll 支持Web类的项目,以ASP.NET Core 6 MVC/API为目标。
      sTools.Extensions.Web.EFCore.dll 支持Web类的项目,以ASP.NET Core 6 MVC/API + EFCore为目标。
      sTools.Extensions.Winform.dll 支持Winform项目为目标,自动引用sTools.Extensions.dll。
    • 本项目本身以方便性为目标,故而不对AOT编译模式作特殊支持和适应。

版本更新:

[V6.0.0.0] 2023-07-05 houfb

  • 彻底重造整个类库,以适应新的.NET Core 6这个全新版本的.NET运行时,暂时去掉了诸多的附属类,重新从最原始的核心类Methods.cs开始,重新实现其中的功能,其他类在后续的实践中再逐步增加。

V6

Note: since then,due to .NET Framework was rewritten as .NET Core,all were problems,so,a fully rewrite unavoidable,so as to mark to .NET6,the version of the new lib was markd V6.

[V3.0.3.4] 2021-05-14 houfb
1.在EmailHelper中增加了新的原型方法Send,暴露了更多的设置参数,同时,让此方法同时支持了126/163/QQ三种邮箱,并且让此方法支持了对SMTP服务器连接端口的自定义设置功能,以解决阿里云等服务器上默认把25端口给禁止掉了,导致无法发送邮件的问题。

[V3.0.3.3] 2021-04-27 houfb
1.修正了EmailHelper中使用126邮箱作为发件箱时总是发送失败的问题,原因是内部调用错误,调用成了qq邮箱的发送逻辑了。

[V3.0.3.2] 2020-11-16 houfb
1.扩展了Methods.ToDateTime方法对于格式[yyyyMMdd][yyMMdd][MMdd]的支持。 2.修正了Methods.ToInt、Methods.ToDateTime、Methods.ToDecimal在传入的值为null时被返回相应类型的默认值,而不是df的问题,这与Convert.ToInt32系列原生方法的行为是不同的,但与int.Parse()的行为是一致的,即,本类中的这一系列方法与int.Parse系列都将null认为是不是合法的值,而不会像Convert.ToInt32系列将null主动转成目标类型的默认值。
3.增加了Methods.ToDouble方法。

[V3.0.3.1] 2020-09-15 houfb
1.扩展了Methods.Extend四参方法对于DataRow类型的支持。

[V3.0.3.0] 2020-07-30 houfb
1.增加了Methods.AESDecode和Methods.AESEncode方法,用于Rijndael(AES)算法的加密与解密。

[V3.0.2.0] 2019-11-27 houfb
1.增加了Methods.GetString方法,用于字符串的字符集转换。
2.增加了XmlHelper.TryLoadXml方法,用于处理加载XML文本时因&符等特殊字符的报错问题。
3.增加了XmlHelper.Serialize方法,用于将一个对象序列化为XML文本。
4.增加了XmlHelper.Deserialize方法,用于将XML文本反序列化为对象。

[V3.0.1.1] 2019-11-21 houfb
1.修正了Methods.MD5Encode方法无法静态调用的问题。

[V3.0.1.0] 2019-07-29 houfb
1.增加了邮件发送相关处理的帮助类功能的实现。

[V3.0.0.0] 2019-06-11 houfb
1.对代码进行大范围调整和重写,对文件摆放位置规则、命名规则进行了重新定义。
2.命名空间对外统一使用sTools,但各Helper类分别独立出去成一个单独的类库,以方便根据需要来引用,这主要是因为某些帮助类依赖了许多第三方组件,如果全纳入主库中,会导致类库变得非常大,引用也非常麻烦。
3.命名类时,统一去除前缀c,而使用看起来更简洁清晰的驼峰式写法,方法名同理,统一去掉前缀m,对不是非常常用的方法改用非静态方法,尽量减少内存。
4.所有分离出来的子类库原则上都要引用和依赖主类库,以方便授权功能。

V3

Note: since then,cMethods and cXMLHelper were renamed Methods and XMLHelper.

[V2.2.0.0] 2018-03-27
1.将cMethods.cs和cXMLHelper.cs改名为Methods.cs和XMLHelper.cs,相应类名也进行了更改,逐步换掉类名带c、方法名带m这种命名格式。
2.改进了DES字符串加密的方法,建议废止原来的字符串加密方法。

[V2.1.0.0] 2016-09-18
1.添加了TextHelper.cs及相关方法。
2.将json处理的2个方法移到了TextHelper.cs中。

[V2.0.0.0] 2016-06-13
1.将cMethods.cs/cXMLHelper.cs/SQLHelper.cs合并建立了当前的这个类库。
2.为该类库建立了使用有效期的验证。

V2

Note: update log of "cMethods.cs",and since then,cMethods as a part of sTools.

[V1.6] 2015-12-14
1.添加了文件中的文本写入操作的可指定字符编码的两个方法。

[V1.5] 2015-1-21
1.添加了MD5 32位加密方法。
2.添加了MD5 Base64后向MD5 32位加密结果转换的方法。

[V1.4] 2014-12-19
1.添加了Unicode编码相关的两个方法。

[V1.3] 2014-11-6
1.修改了MD5加密方式中的最后一步,将原来的Encoding.UTF8.GetString(kBufferHash);转到string的方式换成了Convert.ToBase64String(kBufferHash);,因为在一些应用中发现原来的方法用UTF8转到string会转换成乱码,怎么调都调不过来,这里改成了base64的方式,因为这个方式可以保证不会出现乱码(base64的本性如此)。
2.废除了臻善科技内部通用的那个MD5加密方法,因为修改成base64返回后它与本类库原有的这个加密方法的返回结果是完全相同的。

[V1.2] 2014-10-29
1.增加了一个获取文件夹字节长度的方法mGetDirectoryLength。

[V1.1] 2014-10-28
1.在json处理的两个方法中添加了json的键名去重复处理,改正后将自动只识别重复键名中的第一个。

[V1.0] 2014-10-26
1.该文件早已存在,由于在各项目中所用文件有差别,影响使用,故今日第一次设定了版本信息。

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
8.0.0-z 75 6/30/2026
8.0.0-y 63 6/27/2026
8.0.0-x 72 3/19/2026
8.0.0-w 62 3/19/2026
8.0.0-v 77 1/27/2026
8.0.0-u 77 1/22/2026
8.0.0-t 143 8/22/2025
8.0.0-s 146 8/21/2025
8.0.0-r 142 8/21/2025
8.0.0-q 146 8/20/2025
8.0.0-p 150 8/12/2025
8.0.0-o 155 8/12/2025
8.0.0-n 155 6/25/2025
8.0.0-m 156 6/24/2025
8.0.0-l 157 6/23/2025
8.0.0-k 154 6/23/2025
8.0.0-j 152 6/23/2025
8.0.0-i 149 6/16/2025
8.0.0-h 290 6/13/2025
8.0.0-g 297 6/12/2025
Loading failed