VS扩展(VSIX)

QAdminTools

适用于 QuickAdmin.Net 项目以及 FineUICore 项目的扩展,当前版本可用来为 RazorForms 模式生成定义页面控件的设计时文件 designer.cs,可批量生成。
点击此处open in new window下载安装文件。若之前安装过旧版本,请先将旧版本卸载。

QAdminTools1
QAdminTools2

使用说明

  • 扩展没有后台进程,点击右键菜单里的生成菜单项后才去执行生成流程。
  • 在打开的 Razor 页面里点击右键,即可生成 designer.cs 或转到 designer.cs。
  • 在项目的 Pages、Areas 目录或其子目录上点击右键,即可批量生成 designer.cs。
    批量生成前,最好先关闭所有窗口。若要递归生成其下所有页面的 designer.cs,按住 Shift 键,然后再点击菜单项。
    对于禁用了 RazorForms 开发模式的页面,可在其中加入 // NoRazorForms 注释,生成时将跳过这些页面:
@{
  var F = Html.F();
  // NoRazorForms
  F.PageManager.EnableRazorForms(false);
}


 


(注:对项目首次使用批量生成功能时,先备份一下以防文件编码识别错误)

  • 生成的详细记录将放入输出窗口里的 [QuickAdmin.Net Tools] 下: QAdminTools
    双击里边的文件行即可打开该文件。若是 ID 有重复的,可直接定位到重复 ID 的位置。
  • 支持服务端标签以及链式方法两种写法的 cshtml:
<f:Label ID="lbTest" EncodeText="false" Text="<span class='redTips'>(控件采用传统写法)</span>" />
<f:Button ID="btnTest" Text="测试按钮" OnClick="btnTest_Click"></f:Button>
// 或:
@F.Label().ID("lbTest").EncodeText(false).Text("<span class='redTips'>(控件采用链式写法)</span>")
@F.Button().ID("btnTest").Text("测试按钮").OnClick("btnTest_Click")
  • ID="xxx".ID("xxx") 可位于标签或链式调用的任何位置,提取到的 ID 若有重复的,会有消息提醒。
  • 扩展不去判断当前项目是否启用了 RazorForms 模式,因为有可能当前项目是 RCL 类库项目。
  • 生成 designer.cs 时,若对应的 .cshtml 或 .cshtml.cs 文件已打开且有尚未保存的修改,会先保存它们,以确保修改不会丢失。
  • 支持页面 PageModel 为 publicinternal,如:
// 若类定义没有 `partial` 修饰符,将在生成时自动添加
internal class SimplePage1Model : PageModel
{
}
public class FxdyListModel : CRUDPagingListPageModelAsync<IFxdyService, Fxdy, long, Fxdy, FxdyFilter>
{
}
  • 能够识别 QuickAdmin.Net 内置扩展方法里定义的控件的 ID。

版本更新

  • v1.8.0

    • 补充对扩展方法的识别
  • v1.7.0

    • 识别 // NoRazorForms 注释,生成 designer.cs 时将跳过包含该注释的页面
  • v1.6.0

    • 支持快速跳转到页面里的重复ID的位置
    • 代码重构
  • v1.3.0

    • 文件编码只考虑 UTF8 和 GB2312
  • v1.2.0

    • 支持批量生成 designer.cs