dotnet-exec 0.12.0 released

dotnet-exec 0.12.0 released

Intro

dotnet-exec 是一個 C# 程序的小工具,可以用來運行一些簡單的 C# 程序而無需創建項目文件,讓 C# 像 python/nodejs 一樣簡單,而且可以自定義項目的入口方法,支持但不限于 Main 方法。

Install/Update

dotnet-exec 是一個 dotnet tool,可以使用安裝 dotnet tool 的命令來安裝

安裝/更新最新穩定版本:

dotnet?tool?update?-g?dotnet-execute

安裝最新的 preview 版本:

dotnet?tool?update?-g?dotnet-execute?--prerelease

執行 dotnet-exec -h 或者 dotnet-exec --help 即可看到一些使用說明

8935e9895fc9b79247b95008480571fb.png

help text

Features

Config profile

在這個版本中我們加入了一個 config profile 的功能,我們可以將常用的選項配置保存到一個 profile 中,這樣我們就可以直接重用 profile 就可以了就不需要每次都用,我們可以使用 dotnet-exec profile --help 查看使用幫助

6cf115a6a718474868c36a797059e177.png

可以使用 ls 命令列出所有的 profiles

dotnet-exec?profile?ls

使用 get 命令獲取 profile 的詳細配置:

dotnet-exec?profile?get?web

使用 set 命令來配置 profile 對應的配置:

dotnet-exec?profile?set?web?-r?"nuget:WeihanLi.Web.Extensions"?-u?'WeihanLi.Web.Extensions'?--web?--wide?false

使用 rm 命令來刪除某一個 profile 的配置

dotnet-exec?profile?rm?web

在執行代碼的時候可以通過 --profile 指定要使用的 profile 配置,也可以額外補充 using 以及 reference 信息,也可以移除 profile 中的某一個 using 或者 reference

dotnet-exec?'WebApplication.Create().Chain(_=>_.MapRuntimeInfo()).Run();'?--profile?web?--using?'WeihanLi.Extensions'

4231d707828b27b488c3cc5c19ebcd15.png

Additional script for scripts

在之前版本中增加了對代碼的依賴支持,但是,script 的漏掉了,在這個版本中補充了上去

一個簡單的示例如下:

cddeb7530a37d54e1955c024edad410c.png

需要注意的是 script 的依賴也是script代碼有一些特殊,不能包含命名空間聲明的操作,否則會報錯

Gitee url transform

在之前的版本中我們已經添加了對于 github 和 gist 的支持,在這個版本中增加了對 gitee 的支持

在請求 https://gitee.com/weihanli/storage/blob/master/test/test.cs 的時候會自動轉換成 https://gitee.com/weihanli/storage/raw/master/test/test.cs

執行結果如下:

de369b568d28e5708b18bd0c81ed5db9.png

Reference && Using enhancements

在之前的版本中我們不支持 reference 的 remove,添加了 profile 功能之后有些 reference 可能會希望執行的時候移除掉,所以在新的版本中支持了 reference 的 remove,移除的時候和 using 類似,以 - 開頭即可,另外移除的優先級比較高,如果既有添加又有移除最終會被移除,示例如下:

移除 using

7a93502e168ddccfa673b5bc8c5e41df.png

removing using

移除 reference

ef4e94e4fef97a45585b13424e5e8916.png

在新的版本中支持了從 project file 解析 project 引用,但只支持本地的 project file,遠程的 project file 不支持,因為要 build 項目,項目不在本地無法進行 build

另外改進了一下 framework reference,針對某個 framework 的引用會自動嘗試加載隱式命名空間引用

通過 framework reference 的形式來跑一個 web api,這等于是直接使用 --web 選項

dotnet-exec?'WebApplication.Create().Run();'?--reference?'framework:web'

我們給 asp.net core web 框架加了幾個別名,可以根據自己需要選擇,目前支持的有 web/aspnet/aspnetcore

be4e8f536363814d7fad4de535a7bb49.png

再來看一下 WindowsDesktop 的框架引用示例:

8cb9389d830e37131733a3f1a77c8e77.png

More

.NET Conf China 2022 release~~

References

  • https://github.com/WeihanLi/dotnet-exec

  • https://www.nuget.org/packages/dotnet-execute/

  • https://hub.docker.com/r/weihanli/dotnet-exec

  • https://github.com/WeihanLi/dotnet-exec/compare/0.11.0...0.12.0

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/280613.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/280613.shtml
英文地址,請注明出處:http://en.pswp.cn/news/280613.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

美國用戶現在可以下載其所有Apple帳戶數據,這是操作方法

Starting today, Apple is allowing all US users to download a copy of every last bit of their data from the company. 從今天開始,Apple允許所有美國用戶從該公司下載其數據的最后一部分的副本。 This feature has been available for EU users since May, th…

java 的原碼、補碼、反碼小總結

先看一個代碼吧: int h; return (key null) ? 0 : (h key.hashCode()) ^ (h >>> 16); 這個應該很熟悉吧,是 java 里 HashMap 的計算 hash 值的方法.這里有一個運算符 "^",他其實就是使用補碼來運算的.好了,那么我們下面來說說這些…

Django08:模型層(ORM)--測試腳本/必知的13條/神器的雙下劃線查詢/多表操作

單表操作 django 自帶的sqlite3數據庫對日期格式不是很敏感,處理的時候容易出錯。 測試腳本 測試環境準備:去manage.py 中拷貝錢四行代碼,然后自己手寫兩行。 腳本無論在引用下面,還是單獨開設PY文件都可以。 import os impor…

“互聯網+”促傳統企業三大轉型

2015年是傳統行業互聯網化的元年。國家提出要制定“互聯網”行動計劃后,互聯網旅游、互聯網汽車、互聯網三農、互聯網物流、互聯網醫療等開始起步。同時,面對不確定的移動互聯網時代,互聯網某些技術和模式還在進化、演變之中,每一…

開發高性能ASP.NET應用

本文是“.NET Conf China 2022”上我的一個分享,這里更細化的分享出來。分享分為四個部分:制定指示設計應用正確測試性能優化高性能:不一定是架構出來的,但一定是優化出來的。制定指標-收集首先把項目中的熱路徑API和核心API找出來…

Ethereum-EIPs

What is an EIP? Ethereum Improvement Proposal 以太坊改進建議的文檔 這個文檔向Ethereum社區提供信息,為Ethereum、Ethereum的進程、環境描述一個新特征,該EIP應當為該特征提供一個基本的技術描述和原理原理。該EIP作者有責任在社區和不同意見的文檔…

Django08-1:模型層(ORM)--聚合查詢/分組查詢/F與Q查詢/開啟事務/常用字段及參數/自定義字段/數據庫查詢優化

聚合查詢 單獨使用時,用aggregate 1.只要是跟數據庫相關的模塊 基本都在django.db.models里面 如果沒有應該在django.db里面 2. 聚合查詢通常配合分組使用 from django.db.models import Avg, Sum, Max, Min, Count# 1.所有書的平均價格 resmodels.Book.objects.…

記事本狀態欄不會自動_如何在記事本中同時啟用狀態欄和自動換行

記事本狀態欄不會自動The status bar in Windows’ Notepad displays the current line number and column number of the cursor location. However, if you find that the Status Bar option on the View menu is grayed out, it may be because you have Word Wrap enabled…

洛谷P2587 [ZJOI2008] 泡泡堂

題目傳送門 分析:一道策略游戲題,要求最大期望得分和最小期望得分。首先分析最大,很顯然是可以用一種類似于田忌賽馬的思維來做,將兩隊的實力按照從大到小(其實從小到大也可以)排序,然后就按照順…

極端高溫導致澳大利亞斷網

西澳大利亞首府珀斯因惡劣天氣出現了網絡連接問題, 網絡故障不是由于暴風雨或閃電引起的,而是極端高溫。本周一是珀斯有記錄以來第六熱的天,當天最高溫度達到了44.4℃。因為創紀錄的高溫,澳大利亞寬帶 服務商iiNet在當…

推薦一款采用 .NET 編寫的 反編譯到源碼工具 Reko

今天給大家介紹的是一款名叫Reko的開源反編譯工具,該工具采用C#開發,廣大研究人員可利用Reko來對機器碼進行反編譯處理。我們知道.NET 7 有了NativeAOT 的支持,采用NativeAOT 編譯的.NET程序 無法通過ILSpy 之類的傳統工具得到源碼&#xff0…

并行傳輸數據和串行傳輸數據_為什么串行數據傳輸比并行數據傳輸快?

并行傳輸數據和串行傳輸數據SATA hard drive connections are faster than older PATA hard drive connections and the same can be said for external cabling standards, but this is counter-intuitive: why wouldn’t the parallel transmission be faster? SATA硬盤驅動…

得到某月的天數

Calendar timeCalendar.getInstance(); time.clear(); time.set(Calendar.YEAR,2018);//year年 time.set(Calendar.MONTH,1);//Calendar對象默認一月為0,month月 int daytime.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天數 System.out.pri…

Django09:圖書管理系統筆記/choices用法/ MTV與MVC模型/多對多三種創建方式

圖書管理系統筆記 redirect括號內可以直接寫url 也可以直接寫別名 但如果別名需要參數,必須使用reverse解析。 choices用法 使用場景:能列舉完全的數據 #使用方法:xxx_choice #1. get.xxx_display #2. 如果超出范圍,則顯示原…

業務處理速度變慢?且看IT如何成為救世主

在日常生活的方方面面,我們似乎都在期待著一種即時的便利。比如,用手機購物、訂餐、繳費、預約掛號等等。而在企業中,時間與效率可不是一種休閑福利,而是一項重要的商業功能。我們有理由期待,當今史無前例的數字革命正…

微軟讓卡塔爾世界杯踏入元宇宙

遵守前一篇公眾號文章里的承諾,昨天盆盆在視頻號里錄制了一段5分鐘左右的短視頻,講了江森自控和微軟Azure,如何幫助卡塔爾世界杯打造基于元宇宙的數字體育館。Part.1歡迎掃碼關注我的視頻號(每天更新元宇宙、云計算和數字化的短視頻)。Part.2…

洛谷——P1305 新二叉樹(新建二叉樹以及遍歷)

題目描述輸入一串二叉樹,用遍歷前序打出。 輸入輸出格式輸入格式: 第一行為二叉樹的節點數n。(n \leq 26n≤26) 后面n行,每一個字母為節點,后兩個字母分別為其左右兒子。 空節點用*表示 輸出格式: 前序排列的二叉樹 輸…

插槽1單通道插槽2雙通道_相機雙存儲卡插槽有什么大不了的?

插槽1單通道插槽2雙通道If you paid any attention to the launch of Canon and Nikon’s first full frame mirrorless cameras—the EOS R, Z6, and Z7— you’d have noticed that some people were pretty unhappy that they only came with a single card slot—an SD slo…

python 垃圾回收詳解

原文:https://zhuanlan.zhihu.com/p/31150408 總綱策略和垃圾回收系統工作內容引用計數詳解標記-清除分代收集循環引用編程應用-常見方法ex 過程詳解使用建議觸發機制參考文獻Python垃圾回收機制--完美講解(Python vs Ruby)Python垃圾回收機制…

Django10:Ajax介紹/發送數據/SweetAlert

Ajax 異步提交 局部刷新 發送方式 1. 瀏覽器輸入url,按enter get 2.a標簽href屬性 get 3.form表單 get/post 4. ajax get/post ajax 不是編程語言&#xf…