【发布时间】:2013-04-17 18:09:42
【问题描述】:
基于 Entity Framework 实体,我为其中一个创建了部分类。问题是,我想在返回 ContentValue 之前添加一些代码。但它不起作用 -
[MetadataType(typeof(ToolTip_Meta))]
public partial class Tooltip
{
..some methods etc
}
public class ToolTip_Meta
{
[Required]
public string ContentValue
{
get
{
if (!string.IsNullOrEmpty(this.ContentValue))
return this.ContentValue.Replace("\n", "<br/>").Replace("\r", "").Replace("\r", "").Replace("'", "\\'").Replace("\"", """);
return this.ContentValue;
}
set { ContentValue = value; }
}
}
当我在项目中的某个地方想要获取 ContentValue 属性值时,我得到了未更改的字符串,我没有进入 get 访问器。如何解决?
【问题讨论】:
-
您能否创建并使用以
ContentValue作为支持者的新属性? -
您是从 ContentValue 的 get 属性中调用 ContentValue 的 get 属性吗?这应该 d=肯定不行
-
可以,但我想确保程序员每次获取 ContentValue 属性值时,都会得到更改后的字符串
-
也许最好将模型中的属性标记为内部属性并在部分类中围绕它包装一个公共属性(稍微不同的名称),只有在它位于一个单独的程序集。
-
Silvermind > 基本 Tooltip 类是由实体框架设计器自动生成的,因此唯一的方法是使用部分类中的 ContentValue 属性做一些技巧
标签: c# partial-classes