Rosyln學習記錄1 安裝與配置

2021-07-24 07:14:29 字數 1201 閱讀 8692

最近有乙個工作希望能夠在wpf嵌入乙個c#編譯器,所以我打算使用由微軟提供的rosyln。

當前的rosyln版本為:

我的wpf工程的框架採用.net framework 4.5,採用的是最新版(2.0.0-beta5)。在採用穩定版(1.3.2)時,程式在編譯或者執行時會出現如下錯誤:

未能載入檔案或程式集「system.runtime, version=4.0.20.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a」或它的某乙個依賴項。

這主要是由於在當前框架下,程式集的版本和rosyln所需版本不符導致的。出錯的程式集不止system.runtime,還有包括system.threading,system.collections等其他程式集都會出現這樣的錯誤。如果由於某些原因必須要用1.3.2版本,則可以參考《使用roslyn代替msbuild完成解決方案編譯》。

利用visual studio自帶的nuget包管理器安裝以下包(勾選「包括預發行版」)

管理器會自動安裝相關的依賴項,等待安裝完成即可。

在安裝好後,寫了乙個小demo嘗試了一下,就是實現了最簡單的編譯c#的**功能

using system.io;

using microsoft.codeanalysis;

using microsoft.codeanalysis.csharp;

using microsoft.codeanalysis.csharp.syntax;

//在合適的位置放下這個函式

public

void

compile()

; var root = ((compilationunitsyntax)tree.getroot());

csharpcompilationoptions options = new csharpcompilationoptions(outputkind.dynamicallylinkedlibrary);

csharpcompilation compilation = csharpcompilation.create("graphdrawer", new , references, options);

using (memorystream stream = new memorystream())}}

}

Puppeteer新手學習 之安裝與環境配置

1.建立自己的工作目錄 2.進入工作目錄 npm init 一步步直接回車就行 4.npm install 5.npm i puppeteer 並 async 通過launch生成乙個browser的例項 const browser await puppeteer.launch args no sa...

centos redis 安裝啟動與配

yum install epel release 安裝擴充套件源 yum install redis 安裝redisvim etc redis.conf 找到下面這一行 bind 127.0.0.1 注釋掉service redis start 啟動服務在配置檔案中有個引數 requirepass ...

學習記錄 1

首先開啟示例的 文字挖掘 工作流,看到裡面有三個節點 右鍵檢視excel節點中的示例資料,發現 是詞頻表。所以這個示例工作流是處理提取好的詞頻表,而不是處理原始資料提取詞彙。excel節點的引數都很好理解,看了就懂了,所以略過。第二個節點是篩選高頻詞,右鍵看此節點的配置。第乙個選項 選擇方式 是選擇...