⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class1.cs

📁 C#开发教程 由浅入深 配有实例 是初学者的好帮手
💻 CS
字号:
using System;
using System.Reflection;

namespace AttribIdentifiers
{
	public class HRESULTAttribute : Attribute
	{
		public HRESULTAttribute()
		{
		}
	}

	class SomeClass
	{
		[method: HRESULT]
		public long Foo() { return 0; }
		
		[return: HRESULT]
		public long Bar() { return 0; }

		[property: HRESULT]
		public long Goo { get { return 12345; } }
	}

	class Test
	{
		[STAThread]
		static void Main(string[] args)
		{
			Type type = 
				Type.GetType("AttribIdentifiers.SomeClass");
			foreach (MethodInfo m in type.GetMethods())
			{
				foreach (Attribute a in
					m.GetCustomAttributes(true))
				{
					if (a is HRESULTAttribute)
					{
						Console.WriteLine(
							"method: {0}, "
							+ "CustomAttributes: {1}", 
							m.Name, a);
					}
				}
				ICustomAttributeProvider icap = 
					m.ReturnTypeCustomAttributes;
				foreach (Attribute a in 
					icap.GetCustomAttributes(true))
				{
					Console.WriteLine(
						"method: {0}, "
						+ "ReturnTypeCustomAttribs: {1}",
						m.Name, a);
				}
			}
			foreach (MemberInfo m in type.GetProperties())
			{
				foreach (Attribute a in 
					m.GetCustomAttributes(true))
				{
					Console.WriteLine(
						"property: {0}, "
						+ "CustomAttributes: {1}",
						m.Name, a);
				}
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -