我创建了一个名为Genes的类,我想在另一个脚本中获取其所有属性。我尝试使用
var newOptions = {
'red' : 'Red',
'blue' : 'Blue',
'green' : 'Green',
'yellow' : 'Yellow'
};
var selectedOption = 'green';
var select = $('#example');
if(select.prop) {
var options = select.prop('options');
}
else {
var options = select.attr('options');
}
$('option', select).remove();
$.each(newOptions, function(val, text) {
options[options.length] = new Option(text, val);
});
select.val(selectedOption);
但是props是一个空数组。我认为typeof无法正常工作。这是我的基因类:
PropertyInfo[] props = typeof(Genes).GetProperties();
我基本上想使用foreach循环遍历大小,速度,概率和颜色。有什么问题吗?
答案 0 :(得分:4)
要么使您的字段具有getter和setter的属性:
supportActionBar!!.elevation = 0.0f
或如果确实需要字段,请使用public class Genes
{
private float Size { get; set; }
private float Speed { get; set; }
private float Probability { get; set; }
private int Color { get; set; }
public Genes(float size, float speed, float probability, int color)
{
this.Size = size;
this.Speed = speed;
this.Probability = probability;
this.Color = color;
}
}
:
GetFields
无论您选择哪种方式,这些成员都应该是typeof(Genes).GetFields();
,或者您必须使用BindingFlags.NonPublic
查找非公开成员:
public
或
typeof(Genes).GetProperties(BindingFlags.NonPublic);