日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SmartCode 常见问题

發布時間:2023/12/4 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SmartCode 常见问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SmartCode 能干什么?

SmartCode = IDataSource -> IBuildTask -> IOutput => Build Everything

SmartCode的執行流是 數據源->構建任務->輸出,也就是說應用場景非常廣泛。

  • 從DB讀取數據結構,最終生成整個解決方案=代碼生成器(SmartCode.Generator)

  • ETL,其實很顯然SmartCode執行流跟ETL很像,做一些相應的擴展便可支持ETL(SmartCode.ETL)

  • Mode First,從Model類結構解析出數據源,最終生成SQL腳本,執行生成DB結構,并生成整個解決方案

  • 靜態文檔生成器

  • 還有很多等待你去發掘

  • SmartCode 擴展性如何

    SmartCode 插件機制擁有非常靈活的擴展能力,SmartCode 中一切都是插件。只要繼承IPlugin接口即可,然后配置到appsettings.json,然后通過IPluginManager獲取插件實例。

    { ?"Logging": { ? ?"IncludeScopes": false, ? ?"Console": { ? ? ?"LogLevel": { ? ? ? ?"Default": "Debug"}}}, ?"SmartCode": { ? ?"Version": "v1.16.0", ? ?"Plugins": [{ ? ? ? ?"Type": "SmartCode.IDataSource,SmartCode", ? ? ? ?"ImplType": "SmartCode.NoneDataSource,SmartCode"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.App.BuildTasks.ClearBuildTask,SmartCode.App"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.App.BuildTasks.ProjectBuildTask,SmartCode.App"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.App.BuildTasks.MultiTemplateBuildTask,SmartCode.App"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.App.BuildTasks.ProcessBuildTask,SmartCode.App"},{ ? ? ? ?"Type": "SmartCode.IOutput,SmartCode", ? ? ? ?"ImplType": "SmartCode.App.Outputs.FileOutput,SmartCode.App"},{ ? ? ? ?"Type": "SmartCode.IDataSource,SmartCode", ? ? ? ?"ImplType": "SmartCode.Generator.DbTableSource,SmartCode.Generator"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.Generator.BuildTasks.TableBuildTask,SmartCode.Generator"},{ ? ? ? ?"Type": "SmartCode.INamingConverter,SmartCode", ? ? ? ?"ImplType": "SmartCode.Generator.TableNamingConverter,SmartCode.Generator"},{ ? ? ? ?"Type": "SmartCode.TemplateEngine.ITemplateEngine,SmartCode.TemplateEngine", ? ? ? ?"ImplType": "SmartCode.TemplateEngine.Impl.HandlebarsTemplateEngine,SmartCode.TemplateEngine"},{ ? ? ? ?"Type": "SmartCode.TemplateEngine.ITemplateEngine,SmartCode.TemplateEngine", ? ? ? ?"ImplType": "SmartCode.TemplateEngine.Impl.OfficialRazorTemplateEngine,SmartCode.TemplateEngine"},{ ? ? ? ?"Type": "SmartCode.Generator.IDbTypeConverter,SmartCode.Generator", ? ? ? ?"ImplType": "SmartCode.Generator.DbTypeConverter.DefaultDbTypeConverter,SmartCode.Generator"},{ ? ? ? ?"Type": "SmartCode.IDataSource,SmartCode", ? ? ? ?"ImplType": "SmartCode.ETL.ExtractDataSource,SmartCode.ETL"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.ETL.BuildTasks.TransformBuildTask,SmartCode.ETL"},{ ? ? ? ?"Type": "SmartCode.ETL.ITransformEngine,SmartCode.ETL", ? ? ? ?"ImplType": "SmartCode.ETL.TransformEngine.RazorTransformEngine,SmartCode.ETL"},{ ? ? ? ?"Type": "SmartCode.IBuildTask,SmartCode", ? ? ? ?"ImplType": "SmartCode.ETL.BuildTasks.LoadBuildTask,SmartCode.ETL"},{ ? ? ? ?"Type": "SmartCode.ETL.IETLRepository,SmartCode.ETL", ? ? ? ?"ImplType": "SmartCode.ETL.NoneETLRepository,SmartCode.ETL"},{ ? ? ? ?"Type": "SmartCode.ETL.IETLRepository,SmartCode.ETL", ? ? ? ?"ImplType": "SmartCode.ETL.PostgreSql.PGETLRepository,SmartCode.ETL.PostgreSql", ? ? ? ?"Paramters": { ? ? ? ? ?"ConnectionString": "Server=localhost;Port=5432;User Id=postgres;Password=SmartSql; Database=smartcode_etl;"}}]} }

    如何自定義模板

    目前SmartCode支持倆種模板引擎?Razor?&?Handlebars?。
    Razor 模板引擎使用的是官方版本,這一點上.NETer同學可以很輕松的自定義SmartCode模板,需要注意的是Razor模板的Model為BuildContext,具體方法可以參考源代碼中的模板。編寫完成之后放到RazorTemplates,構建時指定好即可。

    代碼生成器支持多少種數據庫

    SmartCode獲取數據源結構使用的是SmartSql,所以SmartCode支持所有ADO.NET驅動相關的數據庫:MySql/PostgreSql/SqlServer/Oracle/SQLite 等

    相關文章:

    • 如何通過本地化事件正確實現微服務內部強一致性,事件總線跨微服務間最終一致性

    • SmartCode 正式開源,不只是代碼生成器!

    • SmartSql For Asp.Net Core 最佳實踐

    • SmartSql 動態代理倉儲

    原文地址:https://www.cnblogs.com/Ahoo-Wang/p/SmartCode-common-problem.html

    .NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com

    總結

    以上是生活随笔為你收集整理的SmartCode 常见问题的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。