是否可以在set方法中设置多个值?
我想做以下事情:
public int ID { get; set => {Property = value, ID=value}; }
答案 0 :(得分:1)
PHP documentation没有表现力来执行多项操作,因此您需要使用完整的方法体语法:
private Foo foo;
public Foo Foo
{
get { return foo; }
set
{
foo = value;
OtherProperty = value.SomethingElse;
}
}
在某些情况下执行此操作是合理的,因为某些操作本质上具有副作用。例如,如果您要设置对象的时区属性,则更改基础DateTime
以确保其DateTimeKind
为DateTimeKind.Local
是有意义的。如果您没有,则对象的DateTime
属性不完整或错误。
那就是说,如果你发现自己到处都这样做,你可能想重新考虑你的设计,因为过度使用是一种代码味道。
答案 1 :(得分:0)
=>
之后set
可以使用{..}
而不是class Sample
{
private int _Property;
private int _ID;
public int Property
{
get { return _Property; }
}
public int ID
{
get { return _ID; }
set
{
_ID = value;
_Property = value;
}
}
}
。我想你正在寻找一个这样的课程:
Property
这是显示正常工作的Example
此处
的值时自动分配ID
是一个只读属性,您无法设置其值, 它会在您设置renderAlbums() { const list = this.state.albums.map(album => { return <AlbumDetail key={album.title} album={album} />; }); return list; }