1. 程式人生 > >用 C# 編寫 NEO 智能合約

用 C# 編寫 NEO 智能合約

IE nbsp 如果 嘗試 咨詢 菜單 neo 開發 lin

工具 -> 擴展和更新安裝 NeoContractPlugin 插件

打開 Visual Studio 2017,打開 工具擴展和更新 ,在左側點擊 聯機 ,搜索 Neo,安裝 NeoContractPlugin 插件(該過程需要聯網):

技術分享圖片

工具 -> 擴展和更新

技術分享圖片

聯機 -> 搜索“Neo” -> 下載“ NeoContractPlugin”

  1. neo-compiler

在 Github 上下載 neo-compiler 項目,用 Visual Studio 2017 打開該解決方案,發布其中的 neon 項目:

技術分享圖片

neon 項目默認的發布平臺為 win10-x64,如果你不是 Windows10 系統,需要修改發布平臺,用文本編譯器打開 neon.csproj 文件,將 <RuntimeIdentifiers>win10-x64</RuntimeIdentifiers> 更改為目標平臺,如 <RuntimeIdentifiers>win7-64
\</RuntimeIdentifiers>,然後用 VS 重新發布該項目即可。詳細 RID 可以參考 .NET Core Runtime IDentifier (RID) catalog

技術分享圖片

【註】在發布過程中遇到的問題:

技術分享圖片

技術分享圖片

咨詢NEO的開發人員,說是 vs2017 和 dotnetcore 這塊有點問題,建議我使用命令行發布:

進入neon 目錄
運行命令: dotnet publish -r win10-x64 -c debug
r參數 c參數可以根據你的喜好填寫

技術分享圖片

運行命令 dotnet publish -r win10-x64 -c debug

驗證是否成功,到該目錄下查看是否有exe 文件,有的話就說明成功了:

技術分享圖片

存在 neon 應用程序文件

命令運行成功後,重新點擊一下“發布”按鈕即可。

  1. 修改環境變量

發布成功後,會在 bin\Release\PublishOutput 目錄下生成 neon.exe 文件:

技術分享圖片

然後需要添加 path,讓任何位置都能訪問這個 exe 程序:

打開文件資源管理器 -> 此電腦 -> 屬性:

然後需要添加 path,讓任何位置都能訪問這個 exe 程序:

打開文件資源管理器 -> 此電腦 -> 屬性:

技術分享圖片

點擊“高級系統設置”,選擇“環境變量”:

技術分享圖片

高級系統設置 -> 環境變量

技術分享圖片

選中系統變量中的 Path,點擊“編輯”:

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

添加完 path 後,運行 CMD 或者 PowerShell 測試一下(如果添加 path 前就已經啟動了 CMD 則要關掉重啟),輸入 neon 後,沒有報錯,輸出如圖所示的版本號的提示信息即表示環境變量配置成功:

技術分享圖片

創建項目

以上四步安裝配置成功後,即可在 Visual Studio 2017 中創建 NEO 智能合約項目(.NET Framework 版本任意):

技術分享圖片

技術分享圖片

創建項目好後,會自動生成一個 c# 文件,默認的類繼承於 SmartContract:

技術分享圖片

出現錯誤:新建的 NeoContract 項目找不到 Neo 命名空間

解決方法:
在 VS 中右鍵解決方案文件,點擊 “還原 NuGet 程序包” ,這時在 “輸出” 面板會看到 “正在還原 NuGet 程序包...”。所有程序包已經還原成功後,如果代碼仍然報錯,並且右側 “引用” 中仍有個感嘆號,可以嘗試雙擊感嘆號:

技術分享圖片

技術分享圖片

編譯項目

點擊菜單欄上的“生成” -> “生成解決方案”(快捷鍵 Ctrl + Shift + B)開始編譯程序:

技術分享圖片

技術分享圖片

編譯成功後你會在該項目的 bin/Debug 目錄下看到生成的 項目名.avm 文件,該文件即是生成的 NEO 智能合約文件:

技術分享圖片

轉載自 https://www.jianshu.com/p/d0da4ec13716

用 C# 編寫 NEO 智能合約