none
C#類別庫(可攜) 與Unity 5.x ? RRS feed

  • 一般討論

  • Visual C#裡, 類別庫(可攜) 是 .NET 4.0以後才有的東西
    可是Unity 5.x 能引用的類別庫卻是限定在 .NET 2.0~3.5之間的版本?
    那麼有誰知道, 該怎麼把這個Jini 做成Unity能用的類別庫?
    https://github.com/sebastienros/jint

    player

    2015年7月14日 上午 08:07

所有回覆

  • 他不是提供原始檔 ? 將原始檔的編譯平台目標改掉,把使用到 4.0 以後版本API的地方重寫, 重新編譯, 不就得了 ?

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2015年7月14日 上午 08:24
    版主
  • 類別庫(可攜) 是.NET 4.0以後才有的
    所以它沒辦法改編譯目標到 .NET 3.5

    我還在想要要不要重建一份VS的專案檔, 另外開 .NET 3.5的類別庫
    在把他的檔案拉進去?

    player

    2015年7月14日 上午 08:31
  • 那就 Copy & Paste 解決它

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2015年7月14日 上午 08:39
    版主
  • 用開新專案的方法去建立.NET 3.5的類別庫無效
    編譯不起來
    PureAttribute 是 .NET 4.0才出來的東西
    orz

    https://msdn.microsoft.com/en-us/library/system.diagnostics.contracts.pureattribute%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396


    player

    2015年7月14日 上午 08:52
  • 我前面不是有寫 "把使用到 4.0 以後版本API的地方重寫" ?

    在現實生活中,你和誰在一起的確很重要,甚至能改變你的成長軌跡,決定你的人生成敗。 和什麼樣的人在一起,就會有什麼樣的人生。 和勤奮的人在一起,你不會懶惰; 和積極的人在一起,你不會消沈; 與智者同行,你會不同凡響; 與高人為伍,你能登上巔峰。

    2015年7月14日 上午 08:56
    版主
  • 我另外開了一個檔案, 把.NET 4.0才有的東西, 另外建立一份一樣的
    using System;
    using System.Runtime;
    
    [AttributeUsage(AttributeTargets.All, Inherited = false)]
    internal sealed class __DynamicallyInvokableAttribute : Attribute
    {
        [TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
        public __DynamicallyInvokableAttribute()
        {
        }
    }
    
    
    namespace System.Runtime
    {
        [AttributeUsage(AttributeTargets.Constructor | AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
        public sealed class TargetedPatchingOptOutAttribute : Attribute
        {
            private string m_reason;
            public string Reason
            {
                get
                {
                    return this.m_reason;
                }
            }
            public TargetedPatchingOptOutAttribute(string reason)
            {
                this.m_reason = reason;
            }
            private TargetedPatchingOptOutAttribute()
            {
            }
        }
    }
    
    
    namespace System.Diagnostics.Contracts
    {
        [__DynamicallyInvokable, AttributeUsage(AttributeTargets.Class | AttributeTargets.Constructor | AttributeTargets.Method | AttributeTargets.Property | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.Delegate, AllowMultiple = false, Inherited = true), Conditional("CONTRACTS_FULL")]
        public sealed class PureAttribute : Attribute
        {
            [__DynamicallyInvokable, TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")]
            public PureAttribute()
            {
            }
        }
    }
    

    可是即使這樣,編譯時還是錯一堆
    像是這種
     'System.Linq.Expressions.Expression' 不包含 'Empty' 的定義

    所以再看看了




    player

    2015年7月14日 下午 02:27