1

Lua スクリプトでクラスのカスタム属性にアクセスできる方法を探していました。

通常の C# メソッドを実装し、そのメソッドで通常のリフレクションを使用して属性にアクセスし、Lua オブジェクトで registerMethod を実行できることはわかっています。

ただし、この場合、C# メソッドを記述したくはありませんが、Lua コードを使用して通常の文字列を記述し、そこで属性にアクセスするだけです。

私の質問はそれを行う方法ですか?次のようなことをする正しい方法はありますか

require 'CLRPackage'
import "System.Reflection"

typeOfObject = type(myClrObject)
typeOfObject.GetCustomAttribute(...)
-- something more...
4

1 に答える 1

0

私はこれが少し古いことを知っていますが、これを次のようなもので動作させることができました:

> require 'CLRPackage'
> import "System"
> int_type = Type.GetType("System.Int32")
> attrs = int_type:GetCustomAttributes(true)
> for i=0,attrs.Length-1 do Console.WriteLine(attrs:GetValue(i)) end
System.SerializableAttribute
System.Runtime.InteropServices.ComVisibleAttribute
于 2011-08-23T21:19:09.460 に答える