diff --git a/Directory.Build.props b/Directory.Build.props index 0ee4bcf0..7552a70c 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -9,7 +9,7 @@ - 3.2.650-preview20220521 + 3.2.650-preview20220521-2 diff --git a/FreeSql.DbContext/FreeSql.DbContext.xml b/FreeSql.DbContext/FreeSql.DbContext.xml index d34b34ef..4335acb5 100644 --- a/FreeSql.DbContext/FreeSql.DbContext.xml +++ b/FreeSql.DbContext/FreeSql.DbContext.xml @@ -786,14 +786,5 @@ - - - 批量注入 Repository,可以参考代码自行调整 - - - - - - diff --git a/FreeSql.DbContext/Properties/DbContextStrings.resx b/FreeSql.DbContext/Properties/DbContextStrings.resx index ce01210d..5bec8621 100644 --- a/FreeSql.DbContext/Properties/DbContextStrings.resx +++ b/FreeSql.DbContext/Properties/DbContextStrings.resx @@ -1,6 +1,6 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - AddFreeDbContext 发生错误,请检查 {dbContextTypeName} 的构造参数都已正确注入 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + FreeSql:An error occurred in AddFreeDbContext, check that the construction parameters of {dbContextTypeName} have been injected correctly - - 不可添加,已存在于状态管理:{entityString} + + FreeSql:Not addable, already exists in state management: {entityString} - - 不可添加,实体没有主键:{entityString} + + FreeSql:Not addable, entity has no primary key: {entityString} - - 不可添加,未设置主键的值:{entityString} + + FreeSql:Not addable, no value for primary key set: {entityString} - - 不可添加,自增属性有值:{entityString} + + FreeSql:Not addable, self-increasing attribute has value: {entityString} - - 不可附加,实体没有主键:{entityString} + + FreeSql:Not attachable, entity has no primary key: {entityString} - - 不可附加,未设置主键的值:{entityString} + + FreeSql:Not attachable, no value for primary key set: {entityString} - - 不可删除,数据未被跟踪,应该先查询:{entityString} + + FreeSql:Not deletable, data not tracked, should query first: {entityString} - - 不可删除,实体没有主键:{entityString} + + FreeSql:Not deletable, entity has no primary key: {entityString} - - 不可删除,未设置主键的值:{entityString} + + FreeSql:Not deletable, no value for primary key set: {entityString} - - 不可进行编辑,实体没有主键:{entityString} + + FreeSql:Not editable, entity has no primary key: {entityString} - - 不可更新,数据未被跟踪,应该先查询 或者 Attach:{entityString} + + FreeSql:Not updatable, data not tracked, should be queried first or Attach:{entityString} - - 不可更新,实体没有主键:{entityString} + + FreeSql:Not updatable, entity has no primary key: {entityString} - - 不可更新,未设置主键的值:{entityString} + + FreeSql:Not updatable, no value for primary key set: {entityString} - - 不可更新,数据库不存在该记录:{entityString} + + FreeSql:Not updatable, the record does not exist in the database: {entityString} - - 请在 OnConfiguring 或 AddFreeDbContext 中配置 UseFreeSql + + FreeSql:Please configure UseFreeSql in OnConfiguring or AddFreeDbContext - - DbSet.AsType 参数错误,请传入正确的实体类型 + + FreeSql:DbSet. AsType parameter error, please pass in the correct entity type - - 实体类型 {EntityTypeName} 无法转换为 {name},无法使用该方法 + + FreeSql:Entity type {EntityTypeName} cannot be converted to {name} and cannot use this method - - 实体类型 {EntityTypeName} 主键类型不为 {fullName},无法使用该方法 + + FreeSql:Entity type {EntityTypeName} Primary key type is not {fullName} and cannot be used with this method - - 实体类型 {EntityTypeName} 主键数量不为 1,无法使用该方法 + + FreeSql:Entity type {EntityTypeName} Primary key number is not 1 and cannot be used with this method - - FreeSql.Repository 设置过滤器失败,原因是对象不属于 IRepository + + FreeSql:FreeSql. Repository failed to set filter because object does not belong to IRepository - - 不可比较,实体没有主键:{entityString} + + FreeSql:Not comparable, entity has no primary key: {entityString} - - 不可比较,未设置主键的值:{entityString} + + FreeSql:Non-comparable, no value for primary key set: {entityString} - - FreeSql.Repository Insert 失败,因为设置了过滤器 {filterKey}: {filterValueExpression},插入的数据不符合 {entityString} + + FreeSql:FreeSql. Repository Insert failed because the filter {filterKey}: {filterValueExpression} was set and the inserted data does not conform to {entityString} - - ISelect.AsType 参数不支持指定为 object + + FreeSql:ISelect. AsType parameter does not support specifying as object - - {tableTypeFullName} 不存在属性 {propertyName} + + FreeSql:Property {propertyName} does not exist for {tableTypeFullName} - - 找不到方法 DbSet<>.StatesRemoveByObjects + + FreeSql:Method DbSet<> not found. StatesRemoveByObjects - - 参数 data 类型错误 {entityTypeFullName} + + FreeSql:Parameter data type error {entityTypeFullName} - - 参数错误 {param} + + FreeSql:Parameter error {param} - - 参数错误 {param} 不能为 null + + FreeSql:Parameter error {param} cannot be null - - 参数错误 {many} 不是集合属性 + + FreeSql:Parameter error {many} is not a collection property - - 参数错误 {many} 集合属性不存在 + + FreeSql:Parameter error {many} Collection property does not exist - - 参数错误 {one} 属性不存在 + + FreeSql:Parameter error {one} attribute does not exist - - Propagation_Mandatory: 使用当前事务,如果没有当前事务,就抛出异常 + + FreeSql:Propagation_ Mandatory: With the current transaction, throw an exception if there is no current transaction - - Propagation_Never: 以非事务方式执行操作,如果当前事务存在则抛出异常 + + FreeSql:Propagation_ Never: Perform the operation non-transactionally and throw an exception if the current transaction exists - - {tableTypeFullName} 类型的属性 {propertyName} 不是 OneToMany 或 ManyToMany 特性 + + FreeSql:Property {propertyName} of type {tableTypeFullName} is not OneToMany or ManyToMany attribute - - 特别错误:批量添加失败,{dataType} 的返回数据,与添加的数目不匹配 + + FreeSql:Special error: Bulk add failed, {dataType} returned data, does not match the number added - - 特别错误:更新失败,数据未被跟踪:{entityString} + + FreeSql:Special error: Update failed, data not tracked: {entityString} - - 已开启事务,不能禁用工作单元 + + FreeSql:Transaction opened, unit of work cannot be disabled - - {tableTypeFullName} 类型已设置属性 {propertyName} 忽略特性 + + FreeSql:The {tableTypeFullName} type has set the property {propertyName} Ignore the attribute - - {unitOfWorkManager} 构造参数 {fsql} 不能为 null + + FreeSql:The {unitOfWorkManager} constructor parameter {fsql} cannot be null - - FreeSql.Repository Update 失败,因为设置了过滤器 {filterKey}: {filterValueExpression},更新的数据不符合{entityString} + + FreeSql:FreeSql. Repository Update failed because the filter {filterKey}: {filterValueExpression} is set and the updated data does not conform to {entityString} - \ No newline at end of file + diff --git a/FreeSql.Tests/FreeSql.Tests/Properties/CoreStringsTests.cs b/FreeSql.Tests/FreeSql.Tests/Properties/CoreStringsTests.cs index 9c063622..949868f5 100644 --- a/FreeSql.Tests/FreeSql.Tests/Properties/CoreStringsTests.cs +++ b/FreeSql.Tests/FreeSql.Tests/Properties/CoreStringsTests.cs @@ -24,7 +24,11 @@ namespace FreeSql.Tests.Properties public void AsTable_PropertyName_NotDateTimeTest() { var x = CoreStrings.CustomFieldSeparatedBySpaces; + output.WriteLine(x); x = CoreStrings.Custom_StaticMethodName_IsNotNull; + output.WriteLine(x); + x = CoreStrings.Custom_Reflection_IsNotNull; + output.WriteLine(x); string text = CoreStrings.AsTable_PropertyName_NotDateTime("1"); output.WriteLine(text); } diff --git a/FreeSql.Tests/FreeSql.Tests/Properties/DbContextStringsTests.cs b/FreeSql.Tests/FreeSql.Tests/Properties/DbContextStringsTests.cs index aa4d1d24..cfff05e7 100644 --- a/FreeSql.Tests/FreeSql.Tests/Properties/DbContextStringsTests.cs +++ b/FreeSql.Tests/FreeSql.Tests/Properties/DbContextStringsTests.cs @@ -21,7 +21,7 @@ namespace FreeSql.Tests.Properties //Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US"); //Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("en-US"); - //DbContextStrings.Culture= new System.Globalization.CultureInfo("zh-CN"); + //DbContextStrings.Culture= new System.Globalization.CultureInfo("zh-Hans"); DbContextStrings.Culture = new System.Globalization.CultureInfo("en-US"); } diff --git a/FreeSql.sln b/FreeSql.sln index f713110d..97c44a0e 100644 --- a/FreeSql.sln +++ b/FreeSql.sln @@ -687,8 +687,8 @@ Global {D4FEE5C1-6805-4B46-B10B-BE5CC942B883} = {2A381C57-2697-427B-9F10-55DA11FD02E4} EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution + RESX_NeutralResourcesLanguage = en-US + RESX_PrefixTranslations = True SolutionGuid = {089687FD-5D25-40AB-BA8A-A10D1E137F98} - RESX_PrefixTranslations = False - RESX_NeutralResourcesLanguage = zh-Hans EndGlobalSection EndGlobal diff --git a/FreeSql/Properties/CoreStrings.resx b/FreeSql/Properties/CoreStrings.resx index d7036cb3..cc8292fc 100644 --- a/FreeSql/Properties/CoreStrings.resx +++ b/FreeSql/Properties/CoreStrings.resx @@ -1,6 +1,6 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 2.0 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - [Table(AsTable = "{asTable}")] 特性值格式错误 - - - [Table(AsTable = xx)] 设置的属性名 {atmGroupsValue} 不是 DateTime 类型 - - - {name}: Failed to get resource {statistics} - - - {name}: An exception needs to be thrown - - - 错误的表达式格式 {column} - - - Chunk 功能之前不可使用 Select - - - 安全起见,请务必在事务开启之后,再使用 ForUpdate - - - 不能为 null - - - {name} 不能为 null - - - 无法匹配 {property} - - - {property} 无法解析为表达式树 - - - 参数 masterConnectionString 不可为空,请检查 UseConnectionString - - - 提交 - - - 连接失败,准备切换其他可用服务器 - - - 自定义表达式解析错误:类型 {exp3MethodDeclaringType} 需要定义 static ThreadLocal<ExpressionCallContext> 字段、字段、字段(重要三次提醒) - - - Custom { 反射信息 }不能为空,格式:{ 静态方法名 }{ 空格 }{ 反射信息 } - - - Custom { 静态方法名 }不能为空,格式:{ 静态方法名 }{ 空格 }{ 反射信息 } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + FreeSql:[Table(AsTable="{asTable}")] Property value formatted incorrectly + + + FreeSql:The property name {atmGroupsValue} set by [Table (AsTable = xx)] is not of type DateTime + + + FreeSql:{name}: Failed to get resource {statistics} + + + FreeSql:{name}: An exception needs to be thrown + + + FreeSql:Wrong expression format {column} + + + FreeSql:Select is not available until the Chunk function + + + FreeSql:For security reasons, be sure to use ForUpdate after the transaction is open + + + FreeSql:Cannot be null + + + FreeSql:{name} cannot be null + + + FreeSql:Unable to match {property} + + + FreeSql:{property} cannot be resolved to an expression tree + + + FreeSql:The parameter master ConnectionString cannot be empty, check UseConnectionString + + + FreeSql:Commit + + + FreeSql:Connection failed, ready to switch other available servers + + + FreeSql:Custom expression parsing error: type {exp3MethodDeclaringType} needs to define static ThreadLocal<ExpressionCallContext>field, field, field (important three reminders) + + + FreeSql:Custom {Reflection Information} cannot be empty, format: {static method name}{space}{reflection information} + + + FreeSql:Custom {static method name} cannot be empty, format: {static method name}{space}{reflection information} - - Custom 对应的{{ 静态方法名 }}:{fiValueCustomArray} 未设置 [DynamicFilterCustomAttribute] 特性 + + FreeSql:Custom corresponding {{static method name}}:{fiValueCustomArray} The [DynamicFilterCustomAttribute] attribute is not set - - Custom 要求 Field 应该空格分割,并且长度为 2,格式:{ 静态方法名 }{ 空格 }{ 反射信息 } + + FreeSql:Custom requires that Fields be space-split and 2-length in the format: {static method name}{space}{reflection information} - - 操作的数据类型({dataDisplayCsharp}) 与 AsType({tableTypeDisplayCsharp}) 不一致,请检查。 + + FreeSql:The data type of the operation ({dataDisplayCsharp}) is inconsistent with AsType ({tableTypeDisplayCsharp}). Please check. - - DateRange 要求 Value 应该逗号分割,并且长度为 2 + + FreeSql:DateRange requires that Value be comma-separated and 2-length - - DateRange 要求 Value[1] 格式必须为:yyyy、yyyy-MM、yyyy-MM-dd、yyyy-MM-dd HH、yyyy、yyyy-MM-dd HH:mm + + FreeSql:DateRange requires that the Value [1] format must be: yyyy, yyyy-MM, yyyy-MM-dd, yyyyy-MM-dd HH, yyyy, yyyy-MM-dd HH:mm - - 记录可能不存在,或者【行级乐观锁】版本过旧,更新数量{sourceCount},影响的行数{affrows}。 + + FreeSql:The record may not exist, or the row level optimistic lock version is out of date, the number of updates {sourceCount}, the number of rows affected {affrows}. - - SlaveConnectionString 数量与 SlaveWeights 不相同 + + FreeSql:The number of SlaveConnectionStrings is not the same as SlaveWeights - - ColumnAttribute.Name {colattrName} 重复存在,请检查(注意:不区分大小写) + + FreeSql:ColumnAttribute. Name {colattrName} exists repeatedly, please check (note: case insensitive) - - 属性名 {pName} 重复存在,请检查(注意:不区分大小写) + + FreeSql:Property name {pName} exists repeatedly, please check (note: case insensitive) - - {function} 功能要求实体类 {tableCsName} 必须有主键 + + FreeSql:The {function} feature requires that the entity class {tableCsName} must have a primary key - - {tbTypeFullName} 是父子关系,但是 MySql 8.0 以下版本中不支持组合多主键 + + FreeSql:{tbTypeFullName} is a parent-child relationship, but combinations of multiple primary keys are not supported in versions below MySql 8.0 - - {tbTypeFullName} 不是父子关系,无法使用该功能 + + FreeSql:{tbTypeFullName} is not a parent-child relationship and cannot be used - - 这个特别的子查询不能解析 + + FreeSql:This particular subquery cannot be resolved - - 表达式错误,它的顶级对象不是 ParameterExpression:{exp} + + FreeSql:Expression error, its top object is not ParameterExpression:{exp} - - 表达式错误,它不是连续的 MemberAccess 类型:{exp} + + FreeSql:Expression error, it is not a continuous MemberAccess type: {exp} - - ExpressionTree 转换类型错误,值({value}),类型({valueTypeFullName}),目标类型({typeFullName}),{exMessage} + + FreeSql:ExpressionTree conversion type error, value ({value}), type ({valueTypeFullName}), target type ({typeFullName}), Error:{exMessage} - - 未能解析分表字段值 {sqlWhere} + + FreeSql:Failed to parse table field value {sqlWhere} - - AsTable 未实现的功能 {asTable} + + FreeSql:Function {asTable} not implemented by AsTable - - GBase 暂时不支持逗号以外的分割符 + + FreeSql:GBase does not support separators other than commas at this time - - tableName:{tableName} 生成了相同的分表名 + + FreeSql:TableName:{tableName} generated the same table name - - GetPrimarys 传递的参数 "{primary}" 不正确,它不属于字典数据的键名 + + FreeSql:The parameter'{primary}'passed by GetPrimarys is incorrect and does not belong to the key name of the dictionary data - - 已经指定了 {first},不能再指定 {second} + + FreeSql:{first} has already been specified and {second} can no longer be specified - - {tb2DbName}.{mp2MemberName} 被忽略,请检查 IsIgnore 设置,确认 get/set 为 public + + FreeSql:{tb2DbName}. {mp2MemberName} is ignored. Check the IsIgnore setting to make sure get/set is public - - Include 参数类型错误 + + FreeSql:Include parameter type error - - Include 参数类型错误,集合属性请使用 IncludeMany + + FreeSql:Include parameter type is wrong, use IncludeMany for collection properties - - Include 参数类型错误,表达式类型应该为 MemberAccess + + FreeSql:Include parameter type is wrong, expression type should be MemberAccess - - IncludeMany 类型 {tbTypeDisplayCsharp} 的属性 {collMemMemberName} 不是有效的导航属性,提示:IsIgnore = true 不会成为导航属性 + + FreeSql:The property {collMemMemberName} of IncludeMany type {tbTypeDisplayCsharp} is not a valid navigation property, hint: IsIgnore = true will not be a navigation property - - IncludeMany {navigateSelector} 参数错误,Select 只可以使用一个参数的方法,正确格式:.Select(t =>new TNavigate {{}}) + + FreeSql:IncludeMany {navigateSelector} parameter is wrong, Select can only use one parameter's method, the correct format:.Select(t =>new TNavigate{{}}) - - IncludeMany {navigateSelector} 参数错误,Select lambda参数返回值必须和 {collMemElementType} 类型一致 + + FreeSql:IncludeMany {navigateSelector} parameter error, Select lambda parameter return value must match {collMemElementType} type - - IncludeMany 参数1 类型错误,表达式类型应该为 MemberAccess + + FreeSql:IncludeMany parameter 1 has wrong type, expression type should be MemberAccess - - IncludeMany {navigateSelector} 参数类型错误,正确格式: a.collections.Take(1).Where(c =>c.aid == a.id).Select(a=> new TNavigate{{}}) + + FreeSql:IncludeMany {navigateSelector} parameter type is wrong, correct format: a.collections.Take(1).Where(c => C.A ID == a.id).Select (a => new TNavigate{{}}) - - ISelect.InsertInto() 未选择属性: {displayCsharp} + + FreeSql:ISelect. InsertInto() did not select an attribute: {displayCsharp} - - ISelect.InsertInto() 类型错误: {displayCsharp} + + FreeSql:ISelect. InsertInto() type error: {displayCsharp} - - InsertOrUpdate 功能执行 merge into 要求实体类 {CsName} 必须有主键 + + FreeSql:The InsertOrUpdate function performs merge into requiring the entity class {CsName} to have a primary key - - InsertOrUpdate<>的泛型参数 不支持 {typeofT1},请传递您的实体类 + + FreeSql:The generic parameter for InsertOrUpdate<>does not support {typeofT1}. Pass in your entity class - - 【延时加载】功能需要安装 FreeSql.Extensions.LazyLoading.dll,可前往 nuget 下载 + + FreeSql:FreeSql needs to be installed for Delayed Loading. Extensions. LazyLoading. Dll, downloadable to nuget - - 【延时加载】{trytbTypeName} 编译错误:{exMessage}\r\n\r\n{cscode} + + FreeSql:{trytbTypeName} Compilation error: {exMessage}\r\n\r\n{cscode} - - 【延时加载】实体类型 {trytbTypeName} 必须声明为 public + + FreeSql:Entity type {trytbTypeName} must be declared public - - ManyToMany 导航属性 .AsSelect() 暂时不可用于 Sum/Avg/Max/Min/First/ToOne/ToList 方法 + + FreeSql:ManyToMany navigation properties. AsSelect() is temporarily unavailable for the Sum/Avg/Max/Min/First/ToOne/ToList method - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 在 {tbmidCsName} 中没有找到对应的字段,如:{midTypePropsTrytbName}{findtrytbPkCsName}、{midTypePropsTrytbName}_{findtrytbPkCsName} + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} did not find a corresponding field in {tbmidCsName}, such as: {midTypePropsTrytbName}{findtrytbPkCsName}, {midTypePropsTrytbName}_ {findtrytbPkCsName} - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,实体类型 {tbrefTypeName} 缺少主键标识,[Column(IsPrimary = true)] + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} parsing error, entity type {tbrefTypeName} missing primary key identity, [Column (IsPrimary = true)] - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,实体类型 {tbrefTypeName} 必须存在对应的 [Navigate(ManyToMany = x)] 集合属性 + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} parsing error, entity type {tbrefTypeName} must have a corresponding [Navigate (ManyToMany = x)] collection property - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,{tbmidCsName}.{trycolCsName} 和 {trytbCsName}.{trytbPrimarysCsName} 类型不一致 + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} parsing error, {tbmidCsName}. {trycolCsName} and {trytbCsName}. {trytbPrimarysCsName} type inconsistent - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,中间类 {tbmidCsName}.{midTypePropsTrytbName} 错误:{exMessage} + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} parsing error, intermediate class {tbmidCsName}.{midTypePropsTrytbName} Error: {exMessage} - - 【ManyToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,中间类 {tbmidCsName}.{midTypePropsTrytbName} 导航属性不是【ManyToOne】或【OneToOne】 + + FreeSql:[ManyToMany] Navigation property {trytbTypeName}. {pnvName} parsing error, intermediate class {tbmidCsName}. The {midTypePropsTrytbName} navigation property is not ManyToOne or OneToOne - - 映射异常:{name} 没有一个属性名相同 + + FreeSql:Mapping exception: {name} None of the property names are the same - - Ado.MasterPool 值为 null,该操作无法自启用事务,请显式传递【事务对象】解决 + + FreeSql:Ado. MasterPool value is null, this operation cannot self-enable transactions, please explicitly pass [transaction object] resolution - - 缺少 FreeSql 数据库实现包:FreeSql.Provider.{Provider}.dll,可前往 nuget 下载 + + FreeSql:Missing FreeSql database implementation package: FreeSql. Provider. {Provider}. Dll, downloadable to nuget - - 缺少 FreeSql 数据库实现包:{dll},可前往 nuget 下载;如果存在 {dll} 依然报错(原因是环境问题导致反射不到类型),请在 UseConnectionString/UseConnectionFactory 第三个参数手工传入 typeof({providerType}) + + FreeSql:The FreeSql database implementation package is missing: {dll} can be downloaded to nuget; If there is {dll} and an error still occurs (due to environmental issues that cause the type to be unreflected), manually pass in typeof ({providerType}) in the third parameter of UseConnectionString/UseConnectionFactory - - 导航属性 {trytbTypeName}.{pnvName} 特性 [Navigate] Bind 数目({bindColumnsCount}) 与 外部主键数目({tbrefPrimarysLength}) 不相同 + + FreeSql:Navigation property {trytbTypeName}. The number of {pnvName} attributes [Navigate] Binds ({bindColumnsCount}) is different from the number of external primary keys ({tbrefPrimarysLength}) - - {tb2DbName}.{mp2MemberName} 导航属性集合忘了 .AsSelect() 吗?如果在 ToList(a => a.{mp2MemberName}) 中使用,请移步参考 IncludeMany 文档。 + + FreeSql:{tb2DbName}. {mp2MemberName} Navigation Property Collection forgotten. AsSelect()? If used in ToList (a => a. {mp2MemberName}), step by step to refer to the IncludeMany document. - - 【导航属性】{trytbTypeDisplayCsharp}.{pName} 缺少 set 属性 + + FreeSql:[Navigation Properties]{trytbTypeDisplayCsharp}. Missing set attribute for {pName} - - 导航属性 {trytbTypeName}.{pnvName} 没有找到对应的字段,如:{pnvName}{findtbrefPkCsName}、{pnvName}_{findtbrefPkCsName}。或者使用 [Navigate] 特性指定关系映射。 + + FreeSql:Navigation property {trytbTypeName}. {pnvName} No corresponding fields were found, such as: {pnvName}{findtbrefPkCsName}, {pnvName}_ {findtbrefPkCsName}. Or use the [Navigate] attribute to specify the relationship mapping. - - 导航属性 {trytbTypeName}.{pnvName} 解析错误,实体类型 {trytcTypeName} 缺少主键标识,[Column(IsPrimary = true)] + + FreeSql:Navigation property {trytbTypeName}. {pnvName} parsing error, entity type {trytcTypeName} missing primary key identity, [Column (IsPrimary = true)] - - 导航属性 {trytbTypeName}.{pnvName} 解析错误,{trytbCsName}.{trycolCsName} 和 {tbrefCsName}.{tbrefPrimarysCsName} 类型不一致 + + FreeSql:Navigation property {trytbTypeName}. {pnvName} parsing error, {trytbCsName}. {trycolCsName} and {tbrefCsName}. {tbrefPrimarysCsName} type inconsistent - - 导航属性 {trytbTypeName}.{pnvName} 特性 [Navigate] 解析错误,在 {tbrefTypeName} 未找到属性:{bi} + + FreeSql:Navigation property {trytbTypeName}. {pnvName} attribute [Navigate] parsing error, property not found at {tbrefTypeName}: {bi} - - {tableTypeDisplayCsharp} 没有定义主键,无法使用 SetSource,请尝试 SetDto 或者 SetSource 指定临时主键 + + FreeSql:{tableTypeDisplayCsharp} has no primary key defined and cannot use SetSource. Try SetDto - - 没有定义属性 + + FreeSql:No properties defined - - 未实现 + + FreeSql:Not implemented - - 未实现函数表达式 {exp} 解析 + + FreeSql:Function expression {exp} parsing not implemented - - 未实现函数表达式 {exp} 解析,参数 {expArguments} 必须为常量 + + FreeSql:Function expression {exp} parsing not implemented, parameter {expArguments} must be constant - - 未实现函数表达式 {exp} 解析,如果正在操作导航属性集合,请使用 .AsSelect().{exp3MethodName}({exp3ArgumentsCount}) + + FreeSql:Function expression {exp} parsing is not implemented. Use if you are working on a navigation property collection. AsSelect (). {exp3MethodName} ({exp3ArgumentsCount}) - - 未实现 MemberAccess 下的 Constant + + FreeSql:Constant under MemberAccess is not implemented - - 未实现 {name} + + FreeSql:{name} is not implemented - - 不支持 + + FreeSql:I won't support it - - {dataType} 不支持 OrderByRandom 随机排序 + + FreeSql:{dataType} does not support OrderByRandom sorting - - {property} 不是有效的导航属性 + + FreeSql:{property} is not a valid navigation property - - {dbName} 找不到列 {memberName} + + FreeSql:{dbName} Column {memberName} not found - - 找不到 {CsName} 对应的列 + + FreeSql:Cannot find the column corresponding to {CsName} - - 找不到属性:{memberName} + + FreeSql:Attribute not found: {memberName} - - 找不到属性名 {proto} + + FreeSql:Property name {proto} not found - - Custom 找不到对应的{{ 反射信息 }}:{fiValueCustomArray} + + FreeSql:Custom could not find the corresponding {{reflection information}}:{fiValueCustomArray} - - Custom 找不到对应的{{ 静态方法名 }}:{fiValueCustomArray} + + FreeSql:Custom could not find the corresponding {{static method name}}:{fiValueCustomArray} - - [Table(AsTable = xx)] 设置的属性名 {atmGroupsValue} 不存在 + + FreeSql:The property name {atmGroupsValue} set by [Table(AsTable = xx)] does not exist - - 未指定 UseConnectionString 或者 UseConnectionFactory + + FreeSql:No UseConnectionString or UseConnectionFactory specified - - 【{policyName}】ObjectPool.{GetName}() timeout {totalSeconds} seconds, see: https://github.com/dotnetcore/FreeSql/discussions/1081 + + FreeSql:[{policyName}] ObjectPool. {GetName}() timeout {totalSeconds} seconds, see: https://github.com/dotnetcore/FreeSql/discussions/1081 - - 【{policyName}】ObjectPool.GetAsync() The queue is too long. Policy.AsyncGetCapacity = {asyncGetCapacity} + + FreeSql:[{policyName}] ObjectPool. GetAsync() The queue is too long. Policy. AsyncGetCapacity = {asyncGetCapacity} - - 【OneToMany】导航属性 {trytbTypeName}.{pnvName} 在 {tbrefCsName} 中没有找到对应的字段,如:{findtrytb}{findtrytbPkCsName}、{findtrytb}_{findtrytbPkCsName} + + FreeSql:[OneToMany] Navigation property {trytbTypeName}.{pnvName} did not find a corresponding field in {tbrefCsName}, such as: {findtrytb}{findtrytbPkCsName}, {findtrytb}_{findtrytbPkCsName} - - 【OneToMany】导航属性 {trytbTypeName}.{pnvName} 解析错误,{trytbCsName}.{trytbPrimarysCsName} 和 {tbrefCsName}.{trycolCsName} 类型不一致 + + FreeSql:[OneToMany] Navigation property {trytbTypeName}.{pnvName} parsing error, {trytbCsName}.{trytbPrimarysCsName} and {tbrefCsName}.{trycolCsName} is of inconsistent type - - 、{refpropName}{findtrytbPkCsName}、{refpropName}_{findtrytbPkCsName}。或者使用 [Navigate] 特性指定关系映射。 + + FreeSql:, {refpropName}{findtrytbPkCsName}, {refpropName}_{findtrytbPkCsName}. Or use the [Navigate] attribute to specify the relationship mapping. - - 参数 field 未指定 + + FreeSql:Parameter field not specified - - {property} 参数错误,它不是集合属性,必须为 IList<T> 或者 ICollection<T> + + FreeSql:The {property} parameter is incorrect, it is not a collection property and must be IList<T>or ICollection<T> - - {property} 参数错误,它不是有效的导航属性 + + FreeSql:The {property} parameter is incorrect, it is not a valid navigation property - - {where} 参数错误,{keyval} 不是有效的属性名,在实体类 {reftbTypeDisplayCsharp} 无法找到 + + FreeSql:{where} parameter error, {keyval} is not a valid property name and cannot be found in entity class {reftbTypeDisplayCsharp} - - {property} 参数错误,格式 "TopicId=Id,多组使用逗号连接" + + FreeSql:{property} parameter error, format "TopicId=Id, multiple groups using comma connection" - - 解析失败 {callExpMethodName} {message} + + FreeSql:Parsing failed {callExpMethodName} {message} - - 【{policyName}】The ObjectPool has been disposed, see: https://github.com/dotnetcore/FreeSql/discussions/1079 + + FreeSql:[{policyName}] The ObjectPool has been disposed, see: https://github.com/dotnetcore/FreeSql/discussions/1079 - - 【{policyName}】状态不可用,等待后台检查程序恢复方可使用。{UnavailableExceptionMessage} + + FreeSql:The {policyName} status is unavailable and cannot be used until the background checker is restored. {UnavailableExceptionMessage} - - 属性{trytbVersionColumnCsName} 被标注为行锁(乐观锁)(IsVersion),但其必须为数字类型 或者 byte[],并且不可为 Nullable + + FreeSql:The property {trytbVersionColumnCsName} is labeled as a row lock (optimistic lock) (IsVersion), but it must be a numeric type or byte[], and it cannot be Nullable - - properties 参数不能为空 + + FreeSql:Properrties parameter cannot be empty - - {property} 属性名无法找到 + + FreeSql:{property} property name not found - - Range 要求 Value 应该逗号分割,并且长度为 2 + + FreeSql:Range requires that Value be comma-separated and 2-length - - 回滚 + + FreeSql:RollBack - - 运行时错误,反射获取 IncludeMany 方法失败 + + FreeSql:Runtime error, reflection failed to get IncludeMany method - - {qoteSql} is NULL,除非设置特性 [Column(IsNullable = false)] + + FreeSql:{qoteSql} is NULL unless the attribute [Column (IsNullable = false)] - - 分表字段值 "{dt}" 不能小于 "{beginTime} " + + FreeSql:Subtable field value'{dt}'cannot be less than'{beginTime}' - - 分表字段值不能为 null + + FreeSql:Subtable field value cannot be null - - 分表字段值 "{columnValue}" 不能转化成 DateTime + + FreeSql:The tabular field value'{columnValue}'cannot be converted to DateTime - - 分表字段值 "{dt}" 未匹配到分表名 + + FreeSql:Table field value'{dt}'does not match table name - - T2 类型错误 + + FreeSql:Type T2 Error - - tableName 格式错误,示例:“log_{yyyyMMdd}” + + FreeSql:TableName format error, example: "log_{yyyyMMdd}" - - {Type}.AsType 参数错误,请传入正确的实体类型 + + FreeSql:{Type}. AsType parameter error, please pass in the correct entity type - - {thatFullName} 类型无法访问构造函数 + + FreeSql:The {thatFullName} type cannot access the constructor - - {name} 类型错误 + + FreeSql:{name} type error - - {Type}.AsType 参数不支持指定为 object + + FreeSql:{Type}. AsType parameter does not support specifying as object - - 类型 {typeofFullName} 错误,不能使用 IncludeMany + + FreeSql:Type {typeofFullName} error, IncludeMany cannot be used - - 无法解析表达式:{exp} + + FreeSql:Unable to parse expression: {exp} - - 无法解析表达式方法 {exp3tmpCallMethodName} + + FreeSql:Unable to parse expression method {exp3tmpCallMethodName} - - 请使用 fsql.InsertDict(dict) 方法插入字典数据 + + FreeSql:Please use fsql. InsertDict (dict) method inserts dictionary data - \ No newline at end of file + diff --git a/FreeSql/Properties/CoreStrings.zh-Hans.resx b/FreeSql/Properties/CoreStrings.zh-Hans.resx index d7036cb3..6e8b357f 100644 --- a/FreeSql/Properties/CoreStrings.zh-Hans.resx +++ b/FreeSql/Properties/CoreStrings.zh-Hans.resx @@ -495,4 +495,7 @@ 请使用 fsql.InsertDict(dict) 方法插入字典数据 + + Test + \ No newline at end of file