Tag: 属性

使用不同的兼容类型覆盖属性

我需要一个带有属性的基类,我可以使用相同的属性但不同(兼容)类型派生类。 基类可以是抽象的。 public class Base { public virtual object prop { get; set; } } public class StrBase : Base { public override string prop { get; set; } // compiler error } public class UseIt { public void use() { List l = new List(); //… } } 我尝试使用Generics,但这在使用该类时给我一个问题,因为我想在List中存储不同类型的基类。 public class BaseG { public […]

如何在C#中的属性或const上访问Description属性?

如何访问const或属性上的Description属性,即 public static class Group { [Description( “Specified parent-child relationship already exists.” )] public const int ParentChildRelationshipExists = 1; [Description( “User is already a member of the group.” )] public const int UserExistsInGroup = 2; } 要么 public static class Group { [Description( “Specified parent-child relationship already exists.” )] public static int ParentChildRelationshipExists { get […]

什么时候使用get; 组; 在c#中

我无法理解初始化变量之间的区别是什么,得到它的值如下: //define a local variable. int i; i= 0; Console.WriteLine(i); 得到; 组; 用法: public int i { get; set; } i = 0; Console.WriteLine(i); 我已经阅读了一些文章,但我不明白何时使用它。

C#通过引用传递属性

无论如何通过引用传递Object的属性? 我知道我可以传递整个对象,但是我想指定要设置的对象的属性并检查它的类型,以便我知道如何解析。 我应该采取另一种方法(无论如何我都无法改变原始物体)? public class Foo{ public Foo(){} public int Age { get; set; } } private void setFromQueryString(object aProperty, String queryString, HttpContext context) { //here I want to handle pulling the values out of //the query string and parsing them or setting them //to null or empty string… String valueString = context.Request.QueryString[queryString].ToString(); //I need […]

C#:如何在运行时向对象添加属性?

作为一个实体类,我想在运行时添加一个属性,我该怎么办?

如何检查方法是否具有属性

我有一个示例类 public class MyClass{ ActionResult Method1(){ …. } [Authorize] ActionResult Method2(){ …. } [Authorize] ActionResult Method3(int value){ …. } } 现在我想要的是编写一个返回true / false的函数,可以像这样执行 var controller = new MyClass(); Assert.IsFalse(MethodHasAuthorizeAttribute(controller.Method1)); Assert.IsTrue(MethodHasAuthorizeAttribute(controller.Method2)); Assert.IsTrue(MethodHasAuthorizeAttribute(controller.Method3)); 我到了那里 public bool MethodHasAuthorizeAttribute(Func function) { return function.Method.GetCustomAttributes(typeof(AuthorizeAttribute), false).Length > 0; } 适用于Method3。 现在我怎么能以一种将字符串和类作为参数的方式来做那个generics呢?

获取枚举值的自定义属性

在WinRT .NET应用程序(C#)中,我想获取在枚举值上定义的自定义属性。 以下面的枚举为例: public enum MyEnum { [Display(Name=”Foo”)] EnumValue1, [Display(Name=”Bar”)] EnumValue2 } 现在在“普通”.NET中,我知道我能够使用enumValue.GetType().GetMember(enumValue.ToString())获取枚举值的自定义属性enumValue.GetType().GetMember(enumValue.ToString()) 。 不幸的是,在WinRT .NET中,Type类上没有GetMember()方法。 有什么建议怎么搭配? ================================================== === 感谢下面的Marc,我找到了答案 ! 以下代码用于从.NET 4.5 WinRT中的枚举值获取特定的自定义属性: public static class EnumHelper { public static T GetAttribute(this Enum enumValue) where T : Attribute { return enumValue .GetType() .GetTypeInfo() .GetDeclaredField(enumValue.ToString()) .GetCustomAttribute(); } }

在C#中构造对象的首选方法是什么? 构造函数参数或属性?

我想知道,在C#中构造新对象的首选方法是什么? 参加一个人类: public class Person { private string name; private int age; //Omitted.. } 我应该创建它来使用: New Person(“name”, 24); 要么 New Person() { Name = “name”, Age = 24 }; 这只是一个品味的问题还是有充分的理由使用一个而不是另一个? 我可以想象一个人应该只使用构造函数中的必需字段和可选字段而不是构造函数参数,而是使用属性。 我是对的吗?

如何获取属性设置的属性名称?

我将在不传递属性的任何参数的情况下执行此操作! 可能吗? class MyAtt : Attribute { string NameOfSettedProperty() { //How do this? (Would be MyProp for example) } } class MyCls { [MyAtt] int MyProp { get { return 10; } } }

是否在C#中对属性进行读写?

在C#中读取和写入某些基本类型(如bool和int是primefaces的。 (参见C#语言规范第5.5节“5.5变量引用的primefaces性”) 但是如何通过属性访问这些变量呢? 假设它们也是primefaces和线程安全的是否合理? 例如, MyProperty读取primefaces和线程安全吗?: public bool MyProperty { get { return _foo; } } 那么自动实现的属性呢? public bool MyProperty { get; }