オブジェクトで関数を呼び出すと、「エラー #1069: プロパティ マーシャルがフィールドに見つかりません」というエラーが表示されます。また、以前は機能していたと確信しています(数か月間プロジェクトを開いていません)。関数が存在するため意味がありません:
SQLColumn.as:
public function marshall():String {
var request:String = name;
//...
return request;
}
そして、(別のクラスで)エラーのあるコード:
var field:SQLColumn; // value object class with one function (shown above)
for (var i:int;i<fieldsLength;i++) {
field = fields[i];
if (i>0) request += ",";
request += " " + field.marshall(); // error here- the debugger doesn't even step into the function and the compiler has no problems at compile time
}
また、関数を SQLColumn クラスの静的メソッドに変更し、列フィールドを渡しましたが、それは機能します。
public static function marshall(column:SQLColumn):String {
var request:String = column.name;
//...
return request;
}
別のクラスでは、
request += " " + SQLColumn.marshall(field); // works
~~更新~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
SOを静的に変更して機能した後、以前の状態に戻し、現在は機能しています...ランタイムエラーはありません。