ilgenerator

    7熱度

    3回答

    我現在正在使用System.Reflection.Emit,並且發現它(誰不?)像容易出錯一樣痛苦。 你知道IL發生器周圍是否有一個很好的包裝,我可以依靠它以比使用SRE直接播放更安全和更簡單的方式發出IL? 編輯: 我知道,操縱表達式樹是明確和更容易比直接發射IL更安全,但他們也有一些限制,現在。我不能創建代碼塊,使用循環,聲明和與幾個當地人一起工作等等。我們需要等到.NET 4出來:) 此外,

    0熱度

    2回答

    我需要在C#代碼(與ilGenerator.Emit)模擬下列功能 public void AssignAttribute(ref ValueHolder output, Assignment assignment) { ResultAttribute attribute = null; if ((attribute = output.MultipleResults.Find

    11熱度

    2回答

    我試圖在C#中使用Reflection.Emit來發出using (x) { ... }塊。 在代碼中,我需要獲取堆棧的當前頂部,它是一個實現IDisposable的對象,將其存儲在局部變量中,在該變量上實現一個使用塊,然後放入它添加更多的代碼 下面是一個示例C#代碼片段我試圖編譯和反射看看(我能處理半句。): public void Test() { TestDisposable d

    2熱度

    1回答

    在我的應用程序中我需要動態地創建一個包含多個屬性的類型。我知道,在這種情況下,必須使用ILGenerator爲屬性的getter和setter方法生成CIL。 更多由試驗和錯誤比什麼都重要,我終於到達下面的代碼生成對我來說是setter方法: MethodBuilder setMethod = customTypeBuilder.DefineMethod(propertyName + "_set"