一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

C#代碼動(dòng)態(tài)編譯、動(dòng)態(tài)執(zhí)行、動(dòng)態(tài)調(diào)試

  前幾天看到一篇關(guān)于.NET動(dòng)態(tài)編譯的文章 .NET中的動(dòng)態(tài)編譯 ,很受啟發(fā)。在此基礎(chǔ)上我做了一些封裝,為使調(diào)用更加簡(jiǎn)單,并增加了對(duì)動(dòng)態(tài)代碼調(diào)試的支持,相同代碼只編譯一次的支持,代碼改動(dòng)自動(dòng)重新編譯,代碼引用文件的自動(dòng)加載和手工加載等功能。

   

      如上圖,我封裝的類CSharpProvider很簡(jiǎn)單,下面說(shuō)明一下一些公共成員的用法。

      公共屬性

      AssemblyFileName:這個(gè)屬性指定動(dòng)態(tài)編譯后生成的配件名稱。

      CompilerParameters:這個(gè)屬性指定編譯的參數(shù)

      References:這個(gè)屬性指定被編譯代碼中的引用。調(diào)用者只要調(diào)用References.Add("xxx.dll"),就可以加入自己的引用,對(duì)于System命名空間的所有引用,不需要手工加入,該類會(huì)自動(dòng)加載。對(duì)于用戶自己的組件,如果不手工指定引用文件,該類會(huì)自動(dòng)根據(jù)名字空間名進(jìn)行猜測(cè)。

      SourceCodeFileEncoding:如果以文件形式編譯,指定文件的編碼類型。

      公共方法

      public bool Compile(string code)  

      輸入代碼字符串,并編譯

      public bool CompileFromFile(string sourceCodeFileName)

      編譯輸入的代碼文件

      public object CreateInstance(string code, string typeFullName)

      創(chuàng)建類的實(shí)例

      如下面代碼,可以輸入 CreateInstance(code, "MyInterface.IHelloWorld"),也可以輸入CreateInstance(code, "HelloWorld"),程序會(huì)根據(jù)

類型名稱來(lái)自動(dòng)找到符合條件的類并實(shí)例化。如果代碼中有多個(gè)指定類型的類,將實(shí)例化第一個(gè)。

using System;
using MyInterface;

[Serializable]
public class HelloWorld : MarshalByRefObject, IHelloWorld
{
    
public string Say()
    
{
        
return "Hi";
    }

}

NET技術(shù)C#代碼動(dòng)態(tài)編譯、動(dòng)態(tài)執(zhí)行、動(dòng)態(tài)調(diào)試,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 午夜视频免费在线播放 | 亚洲六月丁香六月婷婷蜜芽 | 韩国一级做a爰片性色毛片 韩国一区二区三区 | 欧美午夜性 | 婷婷综合另类小说色区 | 四虎影视在线永久免费看黄 | 婷婷综合五月 | 国产成人亚洲精品91专区高清 | 青青热久久综合网伊人 | 亚洲人成人77777网站 | 国产成人一区二区三区在线视频 | 国产妇乱子伦视频免费 | 人人干人人爽 | 91爱国产| 视频在线观看91 | 91欧美精品| 四虎国产精品免费观看 | 岛国午夜| 一级做a爰片性色毛片新版的 | 国产视频二区在线观看 | 四虎国产在线观看 | 免费一级 一片一毛片 | 天天射天天干天天色 | 全国最大色成免费网站 | 精品亚洲一区二区三区 | 色哟哟在线播放 | 伊人精品网 | 色吧亚洲欧美另类 | 2021久久精品国产99国产精品 | 激情文学小说区另类小说同性 | 久草热视频在线观看 | 91精品国产免费久久久久久 | 亚洲伊人久久大香线蕉在观 | 中文字幕精品在线观看 | 激情视频一区 | 日本精品久久久一区二区三区 | 色五月在线视频 | 亚洲福利在线播放 | 成人网欧美亚洲影视图片 | 九草在线播放 | 天天干2018|