Я работаю в C # с .net 2.0 (я знаю его старый)
Вот мои настройки:
struct propertyType
{
System.type type;
}
public class DataProperties
{
private Dictionary<propertyType, object> properties;
public void setProperty(propertyType key, object value)
{
if(value.getType == key.type) //make sure they are adding valid data
properties.add(key, value);
}
public T getProperty<T> (propertyType key)
{
return (T)properties[key];
}
}
Тогда в моем классе, который должен тянуть свойства, он будет выглядетькак
//this would be declared somewhere else for use by multiple classes.
//but for example sake its here
propertyType hash;
hash.type = typeof(byte[]);
byte[] hashCode = DataSet.properties.GetProperty<hash.type>(hash);
Теперь последняя строка не работает, но я бы хотел работать.Я думаю, проблема в том, что ему не нравится иметь переменную в качестве типа.При фактическом использовании будет много различных объектов PropertyType, поэтому я хочу получить способ легко вывести свойства и привести к нужному типу.
Кто-нибудь знает, точно ли проблема заключается в переменной типа.Но во время компиляции он будет знать, что такое hash.type, поэтому его значение неизвестно во время компиляции.