Имущественная сумка для класса C#
Доступ к свойствам класса C#, таким как язык JavaScript, сделает жизнь намного проще.
Как мы можем сделать это в C#?
Например:
someObject["Property"]="simple string";
Console.WriteLine(someObject["FirstName"]);
4 ответа
Вот как вы можете включить в своих классах функциональность, похожую на пакет свойств, добавив несколько строк кода:
partial class SomeClass
{
private static readonly PropertyDescriptorCollection LogProps = TypeDescriptor.GetProperties(typeof(SomeClass));
public object this[string propertyName]
{
get { return LogProps[propertyName].GetValue(this); }
set { LogProps[propertyName].SetValue(this, value); }
}
}
Вы можете получить каждый класс из Dictionary<string, object>
, Но тогда вы могли бы просто взять JavaScript вместо неправильного использования C#.
Этот код будет работать
dynamic user= new ExpandoObject();
user.name = "Anonymous";
user.id=1234
user.address="12 broad way"
user.State="NY"
Импортировать пространство имен System.Dynamic.
dynamic
ключевое слово может быть использовано вместо
dynamic foo = ...
foo.Property = "simple string";
Console.WriteLine(foo.Property);