大家好,国庆节快乐,Known
又更新了一波功能。
继上个版本以来,一直在完善网站文档、KnownCMS
开源项目和解决框架客户提出的一些问题。这期间客户反馈的问题主要如下:
EFCore
BUG
Token
Known.SqlSugar
从项目独立出来一个新库iFrame
页面打不开问题Database
组件,支持EFCore
IDataRepository
改成依赖注入AppClient.cs
中配置如下public static class AppClient
{
public static void AddSampleRazor(this IServiceCollection services)
{
// 配置建造自动表格页面方法委托
UIConfig.AutoTablePage = (b, m) => b.Component<CustomTablePage>().Set(c => c.Model, m).Build();
}
}
CustomTablePage.razor
页面@inherits BaseComponent
<div>@Model?.PageName</div>
@code {
// 自动表格页面配置模型
[Parameter] public TableModel<Dictionary<string, object>> Model { get; set; }
}
Input
、Select
等不满足业务需求时,框架可以支持在项目中自定义Custom
时,可以选择项目中自定义的字段组件ICustomField
接口即可,示例如下// CustomField是框架默认抽象自定义组件基类,可以换成项目中任何组件
// ICustomField必须要继承,否则在线表单中不会显示
class MyField : CustomField, ICustomField
{
protected override void BuildRender(RenderTreeBuilder builder)
{
// 在这里构建你的自定义组件内容,例如一个按钮
builder.Button("自定义", this.Callback<MouseEventArgs>(OnClick));
}
private void OnClick(MouseEventArgs args) { }
}
EFCore
配置如下XXX.Web
项目中引用<Project Sdk="Microsoft.NET.Sdk.Web">
<ItemGroup>
<PackageReference Include="Known.EntityFramework" Version="1.0.0" />
<!--还需要添加EFCore的数据库依赖,此处以SqlServer为例-->
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.8" />
</ItemGroup>
</Project>
Program.cs
文件中添加如下代码builder.Services.AddKnownEntityFramework(option =>
{
// 配置数据库
option.OnConfig = c => c.UseSqlServer(builder.Configuration.GetSection("ConnString").Get<string>());
// 在此配置业务库数据模型
//option.OnModel = m => m.Entity<SysLog>();
});