我正在尝试仅在值为空时为对象分配默认值
public class TempleListDetails{
public String strTempleImage{
get ;
set{
if (value == null){
strTempleImage= "some image path";
}
}
}
}
它抛出错误说
Error 1 'Project.Entities.strTempleImage.get' must declare a body because it is not marked abstract, extern, or partial
我该如何解决这个问题?
答案 0 :(得分:2)
您必须同时实现属性的两个设置AND get-accessors。
public class TempleListDetails
{
private string strTempleImage;
public String TempleImage
{
get {return strTempleImage;}
set
{
if (value == null)
{
strTempleImage= "some image path";
}
}
}
}
答案 1 :(得分:2)
public class TempleListDetails {
private string _strTemplateImage;
public String strTempleImage {
get
{
if(_strTemplateImage == null)
return String.Empty;
else
return _strTemplateImage;
}
set
{
_strTemplateImage = value ?? "some image path";
}
}
}
答案 2 :(得分:1)
像这样改变
private string strTempleImage; // backing field
public String StrTempleImage // note capital "S"
{
get
{
return strTempleImage;
}
或者,甚至更好:
get
{
return strTempleImage ?? "some image path";
}
如果从未设置过属性,则返回默认值。