如何从一个 SET 方法 c# 设置两个类属性
本文关键字:设置 两个 属性 一个 SET 方法 | 更新日期: 2023-09-27 18:33:36
假设我有一个代表页面的某个对象的类,该页面有两个属性strTitle
存储原始标题的位置和strUrlTitle
我想存储URL friendlz标题的位置。我只想在分配strTitle
时分配strUrlTitle
,因此我使用了以下代码。
public class Page
{
public strUrlTitle {get; private set;}
public strTitle {
get
{
return strTitle;
}
set
{
strTitle = value;
strUrlTitle = HttpUtility.UrlEncode(value.Replace(" ", "-").Trim());
}
}
}
但是看起来好像当我调用的 set 方法并分配strTitle
值时,set 方法再次被调用,我们最终进入无限循环。因此,我的问题是如何从一个 get 方法分配两个值?
谢谢
您需要创建一个支持字段。现在你的二传手和getter调用自己,导致无限循环:
private string _title;
public Title
{
get
{
return _title;
}
set
{
_title = value;
UrlTitle = HttpUtility.UrlEncode(value.Replace(" ", "-").Trim());
}
}
public UrlTitle { get; private set; }
另请参阅我在属性设置器中进入无限循环,如果您搜索"C# 属性设置器无限循环",则可能还有许多其他潜在的重复项。