# TMBApp **Repository Path**: clrscr/tmbapp ## Basic Information - **Project Name**: TMBApp - **Description**: 基于.net core,miniblink(vip和免费版本通用)的windows的桌面程序开发框架。 - **Primary Language**: C# - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 4 - **Created**: 2020-08-27 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # TMBApp #### 作者:宝宝抱抱(QQ:esrin@qq.com) #### 介绍 基于.net core,miniblink(vip和免费版本通用)的windows的桌面程序开发框架。 #### 适用 * 1.本项目不适合开发浏览器! * 2.封装的只是个专为桌面UI定制的WebView,浏览器功能大部分都没封装! * 3.可用于开发纯桌面程序 * 4.可用于当作一个简单的web展示控件 * 5可用于基于html5和js的插件容器 #### 特点 * 1.极其简单(代码和使用都简单),没有多余的接口,只专注桌面UI特性 * 2.内置独立mb极简封装和直接可拖放wpf控件 * 3.适合mb入门参考和研究 * 4.基于纯接口设计 * 5.使用微软ioc容器 * 6.基于服务设计(UI->服务->APP领域模型) * 7.会长期更新,作为本人御用框架持续使用 #### 特性 * 1.采用HTML5创建UI; * 2.支持半透异形窗体创建; * 3.支持独立发布; * 4.支持asp.net core razor集成,可以使用razor模板构造html页面; * 5.TS(JS)<=>C#无缝集成,写一份c#可在TS(JS)代码中无缝调用; * 6.提供VS2019相关插件用于代码生成,让您只专注代码的书写; #### 编译和调试源码 * 1.安装vs2019并更新到最新版本 * 2.安装.net 5.0 x86 sdk 预览版(https://www.dot.net) * 3.开启VS2019预览功能:选项->预览功能->使用.net core sdk 预览版(打勾) * 4.切换为release模式 * 5.编译TnelabAutoCode * 6.退出vs2019,安装编译出来的TnelabAutoCode.vsix * 7.重新打开项目 * 8.切换为debug模式,可进行调试 * 9.设置启动项目为:WpfTest #### 项目结构 * 1.Tnelab.SharedProject-共享项目,里面放了一些公共资源,如:代码生成工具需要使用的T4模板 * 2.TnelabAutoCode-代码生成器,VS插件源码 * 3.test-代码实验用 * 4.Tnelab.MBWrapper-MiniBlink的极简封装 * 5.Tnelab.MBWpf-基于极简封装的Wpf控件 * 6.WpfTest-测试程序 #### 代码生成器的使用 * 1.代码生成器,可以从已有的.cs文件,生成.cs,.ts和.js文件,还可以从.cshtml生成.html文件 * 2.确保已经安装TnelabAutoCode.vsix ##### 从.cs生成 * 1.在.cs文件文件头输入(每行一个模板,知道间断): * //tne://exec_t4(../../Tnelab.SharedProject/to_ts.tt)--表示调用to_ts.tt模板 * //tne://exec_t4(../../Tnelab.SharedProject/to_interface.tt)--表示调用to_interface.tt模板 * 2.疯狂按ctrl+s(自动执行每行的t4模板) * 1)目前已有模板(参看Tnelab.SharedProject) * to_interface.tt---自动接口化[.cs]里面的顶层类 * to_ts.tt---自动TypeScript化[.cs]里面的顶层类 ##### 从.cshtml生成.html文件(注意不要把布局文件拿去生成,最好的做法是,主内容文件拿去生成) * 1.文件第一行输入:@*tne://exec_t4(../../Tnelab.SharedProject/to_html.tt)*@ * 2.疯狂按ctrl+s #### 为项目提供TypeScript编译服务 * 1.为项目添加nuget包:Microsoft.TypeScript.MSBuild * 2.设置好项目属性中的TypeScript标签页面后 * 3.双击打开项目文件,添加一份缺失的typescript的debug版本或者Release版本配置 * 4.并把项目目标设置为x86