小编Ben*_*min的帖子

如何确定属性是否被覆盖?

我在做一个项目,在那里我需要注册的所有属性,因为系统是如此巨大,将需要大量的工作来注册的一切,我希望依赖XAML的目的属性.

目标是找到树顶部的所有属性.

所以基本上

public class A{
    public int Property1 { get; set; }
}

public class B : A{
    public int Property2 { get; set; }
    public virtual int Property3 { get; set; }
}

public class C : B{
    public override int Property3 { get; set; }
    public int Property4 { get; set; }
    public int Property5 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

最终结果将是这样的

A.Property1  
B.Property2  
B.Property3  
C.Property4  
C.Property5  
Run Code Online (Sandbox Code Playgroud)

如果您注意到我不想接受被覆盖的属性,因为我搜索属性的方式如果我做这样的事情

C.Property3例如,它找不到它会检查C的基本类型,它会找到它.

这就是我到目前为止所拥有的.

public static void RegisterType( Type type )
{ …
Run Code Online (Sandbox Code Playgroud)

.net c# reflection types propertyinfo

11
推荐指数
1
解决办法
3567
查看次数

用户名的正则表达式

我试图弄清楚如何在执行以下要求时设置正则表达式.

  • 必须至少包含两个字母a-zA-Z
  • 在第一次检查后,任何地方都必须只包含一个下划线或短划线,短划线/下划线不能作为第一步应用的相同规则
  • 必须是字母数字字符.

基本上一个很好的例子

可接受的用户名

  • myusername_09
  • 用户名-09
  • BW-09

不可接受的用户名

  • bw 09
  • BW - 09
  • bw_-09
  • username__09

如果有任何帮助可以欣赏,这就是我所拥有的,但它并不像我想要的那样为我工作.

^(?=[A-Za-z0-9])(?!.*[_-]{2})[A-Za-z0-9_-]+$
Run Code Online (Sandbox Code Playgroud)

c# regex

5
推荐指数
1
解决办法
1343
查看次数

标签 统计

c# ×2

.net ×1

propertyinfo ×1

reflection ×1

regex ×1

types ×1