当前位置: 编程技术>.net/c#/asp.net
C#代码获取属性名的例子
来源: 互联网 发布时间:2014-08-30
本文导语: C#代码获取属性名,比较简单,适合初学的朋友参考。 代码如下: //获取属性名 using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication { cla...
C#代码获取属性名,比较简单,适合初学的朋友参考。
代码如下:
//获取属性名
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
class Program
{
class Test
{
public string PropertyJustForTest1 { get; set; }
public Test PropertyJustForTest2 { get; set; }
}
static void Main(string[] args)
{
Test test = new Test();
Console.WriteLine(GetPropertyNameHelper.GetPropertyName(() => test.PropertyJustForTest1));
Console.WriteLine(GetPropertyNameHelper.GetPropertyName(() => test.PropertyJustForTest2));
}
}
static class GetPropertyNameHelper
{
public static string GetPropertyName(Expression express)
{
var memberExpress = express.Body as MemberExpression;
if (memberExpress != null)
{
return memberExpress.Member.Name;
}
else
{
return string.Empty;
}
}
}
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication
{
class Program
{
class Test
{
public string PropertyJustForTest1 { get; set; }
public Test PropertyJustForTest2 { get; set; }
}
static void Main(string[] args)
{
Test test = new Test();
Console.WriteLine(GetPropertyNameHelper.GetPropertyName(() => test.PropertyJustForTest1));
Console.WriteLine(GetPropertyNameHelper.GetPropertyName(() => test.PropertyJustForTest2));
}
}
static class GetPropertyNameHelper
{
public static string GetPropertyName(Expression express)
{
var memberExpress = express.Body as MemberExpression;
if (memberExpress != null)
{
return memberExpress.Member.Name;
}
else
{
return string.Empty;
}
}
}
}