【发布时间】:2023-03-28 12:50:01
【问题描述】:
我遇到了一个问题。我定义了一个自动实现的字符串属性。从外部来源检索数据并分配给属性。一些数据有尾随空格。分配给属性时是否有可能修剪空格?
public string Name { get; set; }
从其他来源检索到的数据
Name = service.GetName(); // e.g. "John David "
该属性将在多个地方使用。我不想在每个地方修剪字符串,而是在将其分配给属性时对其进行修剪。有可能吗?
预期结果
Response.Write(Name) // Output: "John David" not "John David "
【问题讨论】:
-
不要使用自动实现的属性。放入一个私有的支持字段,并以老式的方式实现一个 getter 和一个 setter。在setter中调用
Trim -
如果您使用 PostSharp、Fody 等 AOP 工具,您可以通过编译器将行为注入代码生成器。否则,不...该语言不提供任何直接支持。查看副本。
标签: c# getter-setter